From ee0e1cc0c6fffc4743a3792bae1e76680916d862 Mon Sep 17 00:00:00 2001 From: tbrehm <t.brehm@ispconfig.org> Date: Thu, 29 May 2008 04:56:07 -0400 Subject: [PATCH] Allow a server to join existing installations in expert mode. --- server/plugins-available/apache2_plugin.inc.php | 17 ++++++++++++++--- 1 files changed, 14 insertions(+), 3 deletions(-) diff --git a/server/plugins-available/apache2_plugin.inc.php b/server/plugins-available/apache2_plugin.inc.php index 2bc6089..c0b04a4 100644 --- a/server/plugins-available/apache2_plugin.inc.php +++ b/server/plugins-available/apache2_plugin.inc.php @@ -219,12 +219,15 @@ // Remove the symlink for the site, if site is renamed if($this->action == 'update' && $data["old"]["domain"] != '' && $data["new"]["domain"] != $data["old"]["domain"]) { if(is_dir('/var/log/ispconfig/httpd/'.$data["old"]["domain"])) exec('rm -rf /var/log/ispconfig/httpd/'.$data["old"]["domain"]); - if(is_link($data["new"]["document_root"]."/log")) exec("rm -f ".$data["new"]["document_root"]."/log"); + if(is_link($data["old"]["document_root"]."/log")) unlink($data["old"]["document_root"]."/log"); } // Create the symlink for the logfiles if(!is_dir('/var/log/ispconfig/httpd/'.$data["new"]["domain"])) exec('mkdir -p /var/log/ispconfig/httpd/'.$data["new"]["domain"]); - if(!is_link($data["new"]["document_root"]."/log")) exec("ln -s /var/log/ispconfig/httpd/".$data["new"]["domain"]." ".$data["new"]["document_root"]."/log"); + if(!is_link($data["new"]["document_root"]."/log")) { + 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); + } // Get the client ID @@ -389,11 +392,14 @@ $app->log("Removing symlink: $vhost_symlink => $vhost_file",LOGLEVEL_DEBUG); } - // remove old symlink, if domain name of the site has changed + // remove old symlink and vhost file, if domain name of the site has changed if($this->action == 'update' && $data["old"]["domain"] != '' && $data["new"]["domain"] != $data["old"]["domain"]) { $vhost_symlink = escapeshellcmd($web_config["vhost_conf_enabled_dir"].'/'.$data["old"]["domain"].'.vhost'); unlink($vhost_symlink); $app->log("Removing symlink: $vhost_symlink => $vhost_file",LOGLEVEL_DEBUG); + $vhost_file = escapeshellcmd($web_config["vhost_conf_dir"].'/'.$data["old"]["domain"].'.vhost'); + unlink($vhost_file); + $app->log("Removing File $vhost_file",LOGLEVEL_DEBUG); } // request a httpd reload when all records have been processed @@ -441,6 +447,11 @@ } // end removing symlinks + // Delete the log file directory + $vhost_logfile_dir = escapeshellcmd('/var/log/ispconfig/httpd/'.$data["old"]["domain"]); + 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); + } //* This function is called when a IP on the server is inserted, updated or deleted -- Gitblit v1.9.1