Dear, i have updated the ispconfig to the latest version (on s.o. centos 6.5). Basically the problem it's that just after the upgrade, when, from an api request I try to do something (for example create a new website) i receive the following error: PHP Fatal error: Uncaught SoapFault exception: [data_processing_error] uid_error_empty<br /> <br> gid_error_empty<br /> <br> directory_error_empty<br /> directory_error_regex<br /> I have spent all day long in order to figure out, what could be the problem. With no luck. Someone here can help me please? Thank's Mark
Update your server to this version to see if this fixes the issue: http://git.ispconfig.org/ispconfig/ispconfig3/repository/archive.tar.gz?ref=stable-3.0.5
Dear, i have already the version 3.0.5.4p3 installed...that it's look like the latest stable. You mean something different?
The version that I linked above is 3.0.5.4p3 + various patches and bugfixes. So its unlikely that you have this version installed except that you downloaded it today from the URL that I posted above.
unlucky this not solve. Any advise in order to debug the api stuff, in order to understand what going wrong? Am a little in trouble to do that... Error it's always: PHP Fatal error: Uncaught SoapFault exception: [data_processing_error] <br> The problem happen only in the creation of website/ftp user, because email domain and email mailbox are correctly created... :-/
The function returns just a <br>? The current ispconfig versions have a stricter username check, most likely you pass a username thats not allowed anymore to the functions.
I mean, i suppose that the security settings was only for the api user... You mean customer template?
I'am talking about the username and groupname of the user that runs the website. In ISPConfig, the web user is named web[ID] and the group is named client[ID] where [ID] is a number and current ispconfig versions check the names against a regex while oder versions did not check that.
yeah sure i know that. The method that I call is: $return = $client->sites_web_domain_add($session_id, $client_id, $params, $readonly = false); the client_id is calculated with: $record = $client->client_get_by_username($session_id, $customer_username); This return 60, that is exaclty the id of the customer.... The $params are: Array ( [server_id] => xx [ip_address] => * [domain] => domainxxx.com [type] => vhost [parent_domain_id] => 0 [vhost_type] => name [hd_quota] => 600 [traffic_quota] => 15000 [cgi] => y [ssi] => y [suexec] => y [errordocs] => 1 [is_subdomainwww] => 1 [subdomain] => * PHP: => suphp [ruby] => n [redirect_type] => [redirect_path] => [ssl] => n [ssl_state] => [ssl_locality] => [ssl_organisation] => [ssl_organisation_unit] => [ssl_country] => [ssl_domain] => [ssl_request] => [ssl_cert] => [ssl_bundle] => [ssl_action] => [stats_password] => xxxxxxxxxxx [stats_type] => webalizer [allow_override] => All [apache_directives] => [php_open_basedir] => / [custom_php_ini] => [backup_interval] => [backup_copies] => 1 [active] => y [traffic_quota_lock] => n [pm_max_requests] => 0 [pm_process_idle_timeout] => 10 ) And at lest till 2 weeks ago all works pretty well. I really can't figure out...
After 1 day of debug i have found, right now, that the problem it's about the control: if($app->remoting_lib->errorMessage != '') { $this->server->fault('data_processing_error ', $app->remoting_lib->errorMessage); return false; on the method insertQueryPrepare on the file remoting.inc.php For a reason that i don't know, "errorMessage" return "<br >" also if my customer name it's completely valid. My opinion is that the regex in certain case fail. I have solved, well, it's look like that i have solve comment out this control.