Remote API nach Update auf 3.0.5.4p3 defekt

as7

New Member
Hallo!
Nach einem Update auf die Version 3.0.5.4p3 schlagen Versuche via Remote-API eine Web-Domain hinzuzufügen fehl, vor dem Update gab es keinerlei Probleme.

Folgendes Array übergebe ich der Funktion "sites_web_domain_add":
Code:
Array
(
    [domain] => test123.at
    [server_id] => 1
    [active] => y
    [allow_override] => All
    [backup_copies] => 1
    [backup_interval] => none
    [cgi] => n
    [errordocs] => 1
    [fastcgi_php_version] => 
    [hd_quota] => -1
    [ip_address] => *
    [ipv6_address] => 
    [is_subdomainwww] => 1
    [parent_domain_id] => 0
    [perl] => n
    [php] => mod
    [php_fpm_use_socket] => n
    [pm] => dynamic
    [pm_max_children] => 10
    [pm_max_requests] => 0
    [pm_max_spare_servers] => 5
    [pm_min_spare_servers] => 1
    [pm_process_idle_timeout] => 10
    [pm_start_servers] => 2
    [python] => n
    [ruby] => n
    [ssi] => n
    [ssl] => n
    [stats_type] => webalizer
    [subdomain] => www
    [suexec] => y
    [traffic_quota] => -1
    [traffic_quota_lock] => n
    [type] => vhost
    [vhost_type] => name
)

Die einzige Fehlermeldung an die ich rankomme ist folgende: (Domainnamen durch example.com ersetzt)
Code:
[0] => SoapClient Object
  (
      [uri] => https://web1.example.com:8080/remote/
      [location] => https://web1.example.com:8080/remote/index.php
      [trace] => 1
      [_soap_version] => 1
      [httpurl] => Resource id #10
      [__last_request_headers] => POST /remote/index.php HTTP/1.1
Host: web1.example.com:8080
Connection: Keep-Alive
User-Agent: PHP-SOAP/5.3.10-1ubuntu3.9
Content-Type: text/xml; charset=utf-8
SOAPAction: "https://web1.example.com:8080/remote/#sites_web_domain_add"
Content-Length: 4047


                                            [__last_response_headers] => HTTP/1.1 500 Internal Service Error
Date: Mon, 18 Aug 2014 12:05:22 GMT
Server: Apache/2.2.22 (Ubuntu)
X-Powered-By: PHP/5.3.10-1ubuntu3.9
Pragma: no-cache
Cache-Control: no-store, no-cache, max-age=0, must-revalidate
Content-Length: 305
Vary: Accept-Encoding
Connection: close
Content-Type: text/xml; charset=utf-8

                                            [__last_request] => <?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="https://web1.example.com:8080/remote/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ns2="http://xml.apache.org/xml-soap" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"><SOAP-ENV:Body><ns1:sites_web_domain_add><param0 xsi:type="xsd:string">20a25222aad72e2ef322ada7bf22966f</param0><param1 xsi:type="xsd:string">62</param1><param2 xsi:type="ns2:Map"><item><key xsi:type="xsd:string">domain</key><value xsi:type="xsd:string">test123.com</value></item><item><key xsi:type="xsd:string">server_id</key><value xsi:type="xsd:string">1</value></item><item><key xsi:type="xsd:string">active</key><value xsi:type="xsd:string">y</value></item><item><key xsi:type="xsd:string">allow_override</key><value xsi:type="xsd:string">All</value></item><item><key xsi:type="xsd:string">backup_copies</key><value xsi:type="xsd:string">1</value></item><item><key xsi:type="xsd:string">backup_interval</key><value xsi:type="xsd:string">none</value></item><item><key xsi:type="xsd:string">cgi</key><value xsi:type="xsd:string">n</value></item><item><key xsi:type="xsd:string">errordocs</key><value xsi:type="xsd:string">1</value></item><item><key xsi:type="xsd:string">fastcgi_php_version</key><value xsi:type="xsd:string"></value></item><item><key xsi:type="xsd:string">hd_quota</key><value xsi:type="xsd:string">-1</value></item><item><key xsi:type="xsd:string">ip_address</key><value xsi:type="xsd:string">*</value></item><item><key xsi:type="xsd:string">ipv6_address</key><value xsi:type="xsd:string"></value></item><item><key xsi:type="xsd:string">is_subdomainwww</key><value xsi:type="xsd:string">1</value></item><item><key xsi:type="xsd:string">parent_domain_id</key><value xsi:type="xsd:string">0</value></item><item><key xsi:type="xsd:string">perl</key><value xsi:type="xsd:string">n</value></item><item><key xsi:type="xsd:string">php</key><value xsi:type="xsd:string">mod</value></item><item><key xsi:type="xsd:string">php_fpm_use_socket</key><value xsi:type="xsd:string">n</value></item><item><key xsi:type="xsd:string">pm</key><value xsi:type="xsd:string">dynamic</value></item><item><key xsi:type="xsd:string">pm_max_children</key><value xsi:type="xsd:string">10</value></item><item><key xsi:type="xsd:string">pm_max_requests</key><value xsi:type="xsd:string">0</value></item><item><key xsi:type="xsd:string">pm_max_spare_servers</key><value xsi:type="xsd:string">5</value></item><item><key xsi:type="xsd:string">pm_min_spare_servers</key><value xsi:type="xsd:string">1</value></item><item><key xsi:type="xsd:string">pm_process_idle_timeout</key><value xsi:type="xsd:string">10</value></item><item><key xsi:type="xsd:string">pm_start_servers</key><value xsi:type="xsd:string">2</value></item><item><key xsi:type="xsd:string">python</key><value xsi:type="xsd:string">n</value></item><item><key xsi:type="xsd:string">ruby</key><value xsi:type="xsd:string">n</value></item><item><key xsi:type="xsd:string">ssi</key><value xsi:type="xsd:string">n</value></item><item><key xsi:type="xsd:string">ssl</key><value xsi:type="xsd:string">n</value></item><item><key xsi:type="xsd:string">stats_type</key><value xsi:type="xsd:string">webalizer</value></item><item><key xsi:type="xsd:string">subdomain</key><value xsi:type="xsd:string">www</value></item><item><key xsi:type="xsd:string">suexec</key><value xsi:type="xsd:string">y</value></item><item><key xsi:type="xsd:string">traffic_quota</key><value xsi:type="xsd:string">-1</value></item><item><key xsi:type="xsd:string">traffic_quota_lock</key><value xsi:type="xsd:string">n</value></item><item><key xsi:type="xsd:string">type</key><value xsi:type="xsd:string">vhost</value></item><item><key xsi:type="xsd:string">vhost_type</key><value xsi:type="xsd:string">name</value></item></param2></ns1:sites_web_domain_add></SOAP-ENV:Body></SOAP-ENV:Envelope>

                                            [__last_response] => <?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"><SOAP-ENV:Body><SOAP-ENV:Fault><faultcode>data_processing_error</faultcode><faultstring>&lt;br&gt;
&lt;br&gt;
</faultstring></SOAP-ENV:Fault></SOAP-ENV:Body></SOAP-ENV:Envelope>

Die folgenden Log-Files sind leer:
/var/log/ispconfig/ispconfig.log
/var/log/ispconfig/httpd/error.log
In der Datei "/var/log/apache2/error.log" werden durch obigen Request keine Einträge geloggt.
Gibt es sonst noch Logs die ich prüfen kann? Der Fehler im faultstring "<br><br>" ist nicht sonderlich aufschlussreich...

Vielen Dank!
 

Till

Administrator
Hallo!
Nach einem Update auf die Version 3.0.5.4p3 schlagen Versuche via Remote-API eine Web-Domain hinzuzufügen fehl, vor dem Update gab es keinerlei Probleme.

Folgendes Array übergebe ich der Funktion "sites_web_domain_add":
Code:
Array
(
    [domain] => test123.at
    [server_id] => 1
    [active] => y
    [allow_override] => All
    [backup_copies] => 1
    [backup_interval] => none
    [cgi] => n
    [errordocs] => 1
    [fastcgi_php_version] => 
    [hd_quota] => -1
    [ip_address] => *
    [ipv6_address] => 
    [is_subdomainwww] => 1
    [parent_domain_id] => 0
    [perl] => n
    [php] => mod
    [php_fpm_use_socket] => n
    [pm] => dynamic
    [pm_max_children] => 10
    [pm_max_requests] => 0
    [pm_max_spare_servers] => 5
    [pm_min_spare_servers] => 1
    [pm_process_idle_timeout] => 10
    [pm_start_servers] => 2
    [python] => n
    [ruby] => n
    [ssi] => n
    [ssl] => n
    [stats_type] => webalizer
    [subdomain] => www
    [suexec] => y
    [traffic_quota] => -1
    [traffic_quota_lock] => n
    [type] => vhost
    [vhost_type] => name
)

Die einzige Fehlermeldung an die ich rankomme ist folgende: (Domainnamen durch example.com ersetzt)
Code:
[0] => SoapClient Object
  (
      [uri] => https://web1.example.com:8080/remote/
      [location] => https://web1.example.com:8080/remote/index.php
      [trace] => 1
      [_soap_version] => 1
      [httpurl] => Resource id #10
      [__last_request_headers] => POST /remote/index.php HTTP/1.1
Host: web1.example.com:8080
Connection: Keep-Alive
User-Agent: PHP-SOAP/5.3.10-1ubuntu3.9
Content-Type: text/xml; charset=utf-8
SOAPAction: "https://web1.example.com:8080/remote/#sites_web_domain_add"
Content-Length: 4047


                                            [__last_response_headers] => HTTP/1.1 500 Internal Service Error
Date: Mon, 18 Aug 2014 12:05:22 GMT
Server: Apache/2.2.22 (Ubuntu)
X-Powered-By: PHP/5.3.10-1ubuntu3.9
Pragma: no-cache
Cache-Control: no-store, no-cache, max-age=0, must-revalidate
Content-Length: 305
Vary: Accept-Encoding
Connection: close
Content-Type: text/xml; charset=utf-8

                                            [__last_request] => <?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="https://web1.example.com:8080/remote/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ns2="http://xml.apache.org/xml-soap" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"><SOAP-ENV:Body><ns1:sites_web_domain_add><param0 xsi:type="xsd:string">20a25222aad72e2ef322ada7bf22966f</param0><param1 xsi:type="xsd:string">62</param1><param2 xsi:type="ns2:Map"><item><key xsi:type="xsd:string">domain</key><value xsi:type="xsd:string">test123.com</value></item><item><key xsi:type="xsd:string">server_id</key><value xsi:type="xsd:string">1</value></item><item><key xsi:type="xsd:string">active</key><value xsi:type="xsd:string">y</value></item><item><key xsi:type="xsd:string">allow_override</key><value xsi:type="xsd:string">All</value></item><item><key xsi:type="xsd:string">backup_copies</key><value xsi:type="xsd:string">1</value></item><item><key xsi:type="xsd:string">backup_interval</key><value xsi:type="xsd:string">none</value></item><item><key xsi:type="xsd:string">cgi</key><value xsi:type="xsd:string">n</value></item><item><key xsi:type="xsd:string">errordocs</key><value xsi:type="xsd:string">1</value></item><item><key xsi:type="xsd:string">fastcgi_php_version</key><value xsi:type="xsd:string"></value></item><item><key xsi:type="xsd:string">hd_quota</key><value xsi:type="xsd:string">-1</value></item><item><key xsi:type="xsd:string">ip_address</key><value xsi:type="xsd:string">*</value></item><item><key xsi:type="xsd:string">ipv6_address</key><value xsi:type="xsd:string"></value></item><item><key xsi:type="xsd:string">is_subdomainwww</key><value xsi:type="xsd:string">1</value></item><item><key xsi:type="xsd:string">parent_domain_id</key><value xsi:type="xsd:string">0</value></item><item><key xsi:type="xsd:string">perl</key><value xsi:type="xsd:string">n</value></item><item><key xsi:type="xsd:string">php</key><value xsi:type="xsd:string">mod</value></item><item><key xsi:type="xsd:string">php_fpm_use_socket</key><value xsi:type="xsd:string">n</value></item><item><key xsi:type="xsd:string">pm</key><value xsi:type="xsd:string">dynamic</value></item><item><key xsi:type="xsd:string">pm_max_children</key><value xsi:type="xsd:string">10</value></item><item><key xsi:type="xsd:string">pm_max_requests</key><value xsi:type="xsd:string">0</value></item><item><key xsi:type="xsd:string">pm_max_spare_servers</key><value xsi:type="xsd:string">5</value></item><item><key xsi:type="xsd:string">pm_min_spare_servers</key><value xsi:type="xsd:string">1</value></item><item><key xsi:type="xsd:string">pm_process_idle_timeout</key><value xsi:type="xsd:string">10</value></item><item><key xsi:type="xsd:string">pm_start_servers</key><value xsi:type="xsd:string">2</value></item><item><key xsi:type="xsd:string">python</key><value xsi:type="xsd:string">n</value></item><item><key xsi:type="xsd:string">ruby</key><value xsi:type="xsd:string">n</value></item><item><key xsi:type="xsd:string">ssi</key><value xsi:type="xsd:string">n</value></item><item><key xsi:type="xsd:string">ssl</key><value xsi:type="xsd:string">n</value></item><item><key xsi:type="xsd:string">stats_type</key><value xsi:type="xsd:string">webalizer</value></item><item><key xsi:type="xsd:string">subdomain</key><value xsi:type="xsd:string">www</value></item><item><key xsi:type="xsd:string">suexec</key><value xsi:type="xsd:string">y</value></item><item><key xsi:type="xsd:string">traffic_quota</key><value xsi:type="xsd:string">-1</value></item><item><key xsi:type="xsd:string">traffic_quota_lock</key><value xsi:type="xsd:string">n</value></item><item><key xsi:type="xsd:string">type</key><value xsi:type="xsd:string">vhost</value></item><item><key xsi:type="xsd:string">vhost_type</key><value xsi:type="xsd:string">name</value></item></param2></ns1:sites_web_domain_add></SOAP-ENV:Body></SOAP-ENV:Envelope>

                                            [__last_response] => <?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"><SOAP-ENV:Body><SOAP-ENV:Fault><faultcode>data_processing_error</faultcode><faultstring>&lt;br&gt;
&lt;br&gt;
</faultstring></SOAP-ENV:Fault></SOAP-ENV:Body></SOAP-ENV:Envelope>

Die folgenden Log-Files sind leer:
/var/log/ispconfig/ispconfig.log
/var/log/ispconfig/httpd/error.log
In der Datei "/var/log/apache2/error.log" werden durch obigen Request keine Einträge geloggt.
Gibt es sonst noch Logs die ich prüfen kann? Der Fehler im faultstring "<br><br>" ist nicht sonderlich aufschlussreich...

Vielen Dank!

Ich kann mir vorstellen dass es was mit dem neuen system user und system group sowie directory check zu tun hat. Möglicherweise wird der vom api zu früh getriggert, bevor sysstem_user und group gesetzt wurden.

Kopiere mal die angehängte datei nach /usr/local/ispconfig/interface/lib/classes/ und versuch ob es dann geht.
 

as7

New Member
Vielen, vielen Dank, das klappt jetzt wunderbar.
Allerdings scheitere ich jetzt beim Anlegen eine Shell-Benutzers mit folgenden Daten
Code:
active: "y"
dir: "/var/www/clients/client62/web575"
parent_domain_id: 575
password: "abc123"
pgroup: "client62"
puser: "web575"
quota_size: "-1"
server_id: "1"
shell: "bin/bash"
username: "20049_sh575"
username_prefix: "20049_"
aufgrund von folgendem Fehler:
Code:
shell_error_regex<br />
directory_error_notinweb

Woran könnte das liegen?
Die IDs scheinen korrekt, hat nach gleichem Schema bisher funktioniert...
 

Till

Administrator
Shell muss sein:

"/bin/bash" und nicht "bin/bash"

Der andere Fehler besagt dass der Pfad /var/www/clients/client62/web575 nicht innerhalb des Pfades des webs liegt. Was wird denn bei der Webseite 575 in der ispconfig Datenbank für ein Pfad in phpmyadmin angezeigt?
 

as7

New Member
Shell muss sein:

"/bin/bash" und nicht "bin/bash"
Danke für den Hinweis, habe es korrigiert.
Der andere Fehler besagt dass der Pfad /var/www/clients/client62/web575 nicht innerhalb des Pfades des webs liegt. Was wird denn bei der Webseite 575 in der ispconfig Datenbank für ein Pfad in phpmyadmin angezeigt?
In der Tabelle "web_domain" steht in der Zeile mit ID 575 im Feld "document_root" "/var/www/clients/client62/web575" im Feld "php_open_basedir":
Code:
/var/www/clients/client62/web575/web:/var/www/clients/client62/web575/tmp:/var/www/test234.at/web:/srv/www/test234.at/web:/usr/share/php5:/tmp:/usr/share/phpmyadmin:/etc/phpmyadmin:/var/lib/phpmyadmin
 

Till

Administrator
Das scheint ok zu sein. muss ich mir im Code nochmal ansehen warum das im Interface geht, im api aber nicht.
 

Till

Administrator
Ich habe mal eine neue Version angehängt, falls jemand mal testen mag. Habe hier derzeit kein remote setup. Wenn es nicht geht muss ich mir morgen erstmal eines aufsetzen.
 

Anhänge

  • validate_systemuser.inc.zip
    1,8 KB · Aufrufe: 782

Till

Administrator
Mit der angehängten Version sollte es wieder gehen.
 

Anhänge

  • validate_systemuser.inc.zip
    1,9 KB · Aufrufe: 821
Hatte die vergangenen 3h genau dieses Problem und schon begonnen an mir gewaltig zu zweifeln.

Das nächste mal sollte ich gleich hier rein sehen, wenn etwas plötzlich nicht mehr so klappt wie erwartet.

Danke euch für die Lösung.
 

Till

Administrator
Den kannst Du sehr einfach mit einer festen Suche vorbelegen, Klicke hinter dem Suchfeld auf Advanced, wähle als suche bugreport und speicher es als nugreports. Dann kannst Du jederzeit über einen Link im Suche Menü direkt alle offenen Bugreports anzeigen lassen. Geschlossene Bugreports sind immer in der roadmap gelistet.
 

Werbung

Top