HowtoForge Forums | HowtoForge - Linux Howtos and Tutorials

HowtoForge Forums | HowtoForge - Linux Howtos and Tutorials (
-   Developers' Forum (
-   -   ISPConfig available for testing (

till 15th March 2011 11:38

ISPConfig available for testing
The first release candidate (RC1) version of the upcoming ISPConfig is available for download. RC versions are released for testing purposes, it is not recommended to use them on production systems.

This release is a bugfix release for ISPConfig



Update instructions


cd /tmp
rm -rf /tmp/ispconfig3_install
tar xvfz ISPConfig-
cd ispconfig3_install/install
php -q update.php

xaver 27th March 2011 03:11

2 Problems with API
-> addclient password dose not work (updateClient work)
Problem is
PHP Code:

Line 695 $password crypt(stripslashes($password),$salt); 

This is normal md5 pw and if you comment out this line it work

-> Delete a User Domain stays. Not sites i mean module Domain

-> updateclient template_master not included
PHP Code:

        if(isset($params['template_master']) and $params['template_master'] > 0)
$template=$app->db->queryOneRecord("SELECT * FROM client_template WHERE template_id=".intval($params['template_master']));

-> My own function in for getting next webID without SQL in my API.
PHP Code:

/* Get next AutoIncrement for sites_web_domain_add */

public function sites_web_domain_nextID($session_id)
$this->checkPerm($session_id'sites_web_domain_get')) {
$this->server->fault('permission_denied''You do not have the permissions to access this function.');
$table_info $app->db->queryOneRecord("SHOW TABLE STATUS LIKE 'web_domain'");

falko 27th March 2011 21:33

I've added this to our bugtracker, so we will check that.

till 27th March 2011 23:29


This is normal md5 pw and if you comment out this line it work
The password encryption mechanism used in current ispconfig versions is crypt and not md5.

xaver 28th March 2011 00:07

If you use API and dont comment it out, password wont work.
In next lines are the insert with md5('.$password.') in the query.

UPDATE in -> NO crypt -> after a update the account work perfect:
PHP Code:

        function ispconfig_sysuser_update($params,$client_id){
$username $app->db->quote($params["username"]);
$password $app->db->quote($params["password"]);
$client_id intval($client_id);
$sql "UPDATE sys_user set username = '$username', passwort = md5('$password') WHERE client_id = $client_id";

ADD in -> crypt -> login with API created account wont work:
PHP Code:

            for (
$n=0;$n<8;$n++) {
$password crypt(stripslashes($password),$salt);
$sql1 "INSERT INTO sys_user (username,passwort,modules,startmodule,app_theme,typ,active,language,groups,default_group,client_id)
            VALUES ('$username',md5('$password'),'$modules','$startmodule','$usertheme','$type','$active','$language',$groups,$groupid,$insert_id)"

Add a normal account in ispconfig and look into the database in sys_user table -> its md5.
client table is crypt.

till 28th March 2011 00:17

[I checked the file. The crypt line is correct. The bug was in line 697 which has to be:


VALUES ('$username','$password','$modules','$startmodule','$usertheme','$type','$active','$language',$groups,$groupid,$insert_id)";
Thanks for reporting the bug. I fixed the sql statement in svn.

xaver 28th March 2011 00:54

Ok this way work too :)

i hope you give Domain Module and client_update with templates a look too ;)
getNextID, maybe next version -> The Idear was for a post in forum. The post used mysql connection...

I have still another problem and found no solution.
I wrote 3 versions for API use.
1. version i changed a lot in for add a website and it worked
2. version never in use on my system..
3. on dev server no problem, on productive server wont work.

if i setup a account with api, it work but client is always client0 -> but variable isset....
if i setup with interface, document root, system group .. everything is same as i send with API.

PHP Code:

public function addWebsite($traffic,$webspace){
$this->web_id $this->sites_web_domain_nextID();
$documentroot "/var/www/clients/client".$this->client_id."/web".$this->web_id;
$system_user "web".$this->web_id;
$system_group 'client'.$this->client_id;
    try {
$params = array('server_id' => $this->serverid,
'ip_address' => '*',
'domain' => $this->domain,
'type' => 'vhost',
'parent_domain_id' =>'',
'vhost_type' =>'name',
'hd_quota' => $webspace,
'traffic_quota' => $traffic,
'cgi' =>'n',
'ssi' =>'n',
'suexec' =>'n',
'errordocs' =>'1',
'subdomain' =>'www',
'ssl' =>'n',
'php' =>'mod',
'active' => 'y',
'redirect_type' =>'',
'redirect_path' =>'',
'ssl_state' =>'',
'ssl_locality' =>'',
'ssl_organisation' =>'',
'ssl_organisation_unit' =>'',
'ssl_country' =>'',
'ssl_domain' =>'',
'ssl_request' =>'',
'ssl_cert' =>'',
'ssl_bundle' =>'',
'ssl_action' =>'',
'stats_type' => 'webalizer',
'stats_password' =>'',
'document_root' => $documentroot
'system_user' =>$system_user,
'system_group' =>$system_group,
'allow_override' =>'Indexes AuthConfig FileInfo',
'php_open_basedir' => $php_open_basedir,
'apache_directives' =>'',
'backup_interval' => 'none',
'custom_php_ini' => NULL,
'backup_copies' => 1,
$this->web_id $this->session->sites_web_domain_add($this->session_id$this->client_id$params);
    catch (
SoapFault $e) {
'SOAP Error: '.$e->getMessage());

i hope its understandable.


till 28th March 2011 01:15

In the $params array, the parameter "client_group_id" is missing and the paramaters:

'document_root' => $documentroot,
'system_user' =>$system_user,
'system_group' =>$system_group,
'php_open_basedir' => $php_open_basedir,

are obsolete as they are set by ispconfig now automatically. client_group_id is the sys_groupid of the website or in other words, the groupid of the client or reseller that owns the website.

A function to get the next webID is then not needed anymore I guess as all variables relating to the webID are now set by ispconfig.

xaver 28th March 2011 02:27

cool thx, i will try it tomorrow

conceptnet 28th March 2011 12:26

I get this problem without this params:

SOAP Error: documentroot_error_empty

Wont work without this params

All times are GMT +2. The time now is 03:00.

Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2014, vBulletin Solutions, Inc.