| | |
| | | exec("ln -s /var/log/ispconfig/httpd/".$data["new"]["domain"]." ".$data["new"]["document_root"]."/log"); |
| | | $app->log("Creating Symlink: ln -s /var/log/ispconfig/httpd/".$data["new"]["domain"]." ".$data["new"]["document_root"]."/log",LOGLEVEL_DEBUG); |
| | | } |
| | | /* |
| | | // Create the symlink for the logfiles |
| | | // This does not work as vlogger can not log trogh symlinks. |
| | | if($this->action == 'update' && $data["old"]["domain"] != '' && $data["new"]["domain"] != $data["old"]["domain"]) { |
| | | if(is_dir($data["old"]["document_root"]."/log")) exec('rm -rf '.$data["old"]["document_root"]."/log"); |
| | | if(is_link('/var/log/ispconfig/httpd/'.$data["old"]["domain"])) unlink('/var/log/ispconfig/httpd/'.$data["old"]["domain"]); |
| | | } |
| | | |
| | | |
| | | // Create the symlink for the logfiles |
| | | if(!is_dir($data["new"]["document_root"]."/log")) exec('mkdir -p '.$data["new"]["document_root"]."/log"); |
| | | if(!is_link('/var/log/ispconfig/httpd/'.$data["new"]["domain"])) { |
| | | exec("ln -s ".$data["new"]["document_root"]."/log /var/log/ispconfig/httpd/".$data["new"]["domain"]); |
| | | $app->log("Creating Symlink: ln -s ".$data["new"]["document_root"]."/log /var/log/ispconfig/httpd/".$data["new"]["domain"],LOGLEVEL_DEBUG); |
| | | } |
| | | */ |
| | | |
| | | // Get the client ID |
| | | $client = $app->db->queryOneRecord("SELECT client_id FROM sys_group WHERE sys_group.groupid = ".intval($data["new"]["sys_groupid"])); |
| | | $client_id = intval($client["client_id"]); |
| | |
| | | } |
| | | $tpl->setLoop('redirects',$rewrite_rules); |
| | | |
| | | /** |
| | | * install fast-cgi starter script and add script aliasd config |
| | | * first we create the script directory if not already created, then copy over the starter script |
| | | * settings are copied over from the server ini config for now |
| | | * TODO: Create form for fastcgi configs per site. |
| | | */ |
| | | |
| | | if ($data["new"]["php"] == "fast-cgi") |
| | | { |
| | | $fastcgi_config = $app->getconf->get_server_config($conf["server_id"], 'fastcgi'); |
| | | |
| | | $fastcgi_starter_path = str_replace("[system_user]",$data["new"]["system_user"],$fastcgi_config["fastcgi_starter_path"]); |
| | | $fastcgi_starter_path = str_replace("[client_id]",$client_id,$fastcgi_starter_path); |
| | | |
| | | if (!is_dir($fastcgi_starter_path)) |
| | | { |
| | | exec("mkdir -p ".escapeshellcmd($fastcgi_starter_path)); |
| | | exec("chown ".$data["new"]["system_user"].":".$data["new"]["system_group"]." ".escapeshellcmd($fastcgi_starter_path)); |
| | | |
| | | |
| | | $app->log("Creating fastcgi starter script directory: $fastcgi_starter_path",LOGLEVEL_DEBUG); |
| | | } |
| | | |
| | | $fcgi_tpl = new tpl(); |
| | | $fcgi_tpl->newTemplate("php-fcgi-starter.master"); |
| | | |
| | | $fcgi_tpl->setVar('php_ini_path',$fastcgi_config["fastcgi_phpini_path"]); |
| | | $fcgi_tpl->setVar('document_root',$data["new"]["document_root"]); |
| | | $fcgi_tpl->setVar('php_fcgi_children',$fastcgi_config["fastcgi_children"]); |
| | | $fcgi_tpl->setVar('php_fcgi_max_requests',$fastcgi_config["fastcgi_max_requests"]); |
| | | $fcgi_tpl->setVar('php_fcgi_bin',$fastcgi_config["fastcgi_bin"]); |
| | | |
| | | $fcgi_starter_script = escapeshellcmd($fastcgi_starter_path.$fastcgi_config["fastcgi_starter_script"]); |
| | | file_put_contents($fcgi_starter_script,$fcgi_tpl->grab()); |
| | | unset($fcgi_tpl); |
| | | |
| | | $app->log("Creating fastcgi starter script: $fcgi_starter_script",LOGLEVEL_DEBUG); |
| | | |
| | | |
| | | exec("chmod 755 $fcgi_starter_script"); |
| | | exec("chown ".$data["new"]["system_user"].":".$data["new"]["system_group"]." $fcgi_starter_script"); |
| | | |
| | | $tpl->setVar('fastcgi_alias',$fastcgi_config["fastcgi_alias"]); |
| | | $tpl->setVar('fastcgi_starter_path',$fastcgi_starter_path); |
| | | |
| | | } |
| | | |
| | | $vhost_file = escapeshellcmd($web_config["vhost_conf_dir"].'/'.$data["new"]["domain"].'.vhost'); |
| | | file_put_contents($vhost_file,$tpl->grab()); |
| | | $app->log("Writing the vhost file: $vhost_file",LOGLEVEL_DEBUG); |
| | |
| | | |
| | | $docroot = escapeshellcmd($data["old"]["document_root"]); |
| | | if($docroot != '' && !stristr($docroot,'..')) exec("rm -rf $docroot"); |
| | | |
| | | |
| | | //remove the php fastgi starter script if available |
| | | if ($data["old"]["php"] == "fast-cgi") |
| | | { |
| | | $fastcgi_starter_path = str_replace("[system_user]",$data["old"]["system_user"],$web_config["fastcgi_starter_path"]); |
| | | if (is_dir($fastcgi_starter_path)) |
| | | { |
| | | exec("rm -rf $fastcgi_starter_path"); |
| | | } |
| | | } |
| | | |
| | | $app->log("Removing website: $docroot",LOGLEVEL_DEBUG); |
| | | |
| | | // Delete the symlinks for the sites |
| | |
| | | if($data["old"]["domain"] != '' && !stristr($vhost_logfile_dir,'..')) exec("rm -rf $vhost_logfile_dir"); |
| | | $app->log("Removing website logfile directory: $vhost_logfile_dir",LOGLEVEL_DEBUG); |
| | | |
| | | //delete the web user |
| | | $command = 'userdel'; |
| | | $command .= ' '.$data["old"]["system_user"]; |
| | | exec($command); |
| | | } |
| | | |
| | | //* This function is called when a IP on the server is inserted, updated or deleted |