From 6733652286e1b74e447a75d0dac9d1637096b34d Mon Sep 17 00:00:00 2001
From: tbrehm <t.brehm@ispconfig.org>
Date: Sun, 11 Jan 2009 12:44:25 -0500
Subject: [PATCH] Fixed several bugs in client db plugin.
---
server/plugins-available/apache2_plugin.inc.php | 40 +++++++++++++++++++++++++++++++++++++---
1 files changed, 37 insertions(+), 3 deletions(-)
diff --git a/server/plugins-available/apache2_plugin.inc.php b/server/plugins-available/apache2_plugin.inc.php
index b24369a..ed2b212 100644
--- a/server/plugins-available/apache2_plugin.inc.php
+++ b/server/plugins-available/apache2_plugin.inc.php
@@ -302,6 +302,10 @@
$tmp_symlink = str_replace("[website_domain]",$data["new"]["domain"],$tmp_symlink);
// Remove trailing slash
if(substr($tmp_symlink, -1, 1) == '/') $tmp_symlink = substr($tmp_symlink, 0, -1);
+ //* Remove symlink if target folder has been changed.
+ if($data["old"]["document_root"] != '' && $data["old"]["document_root"] != $data["new"]["document_root"] && is_link($tmp_symlink)) {
+ unlink($tmp_symlink);
+ }
// create the symlinks, if not exist
if(!is_link($tmp_symlink)) {
exec("ln -s ".escapeshellcmd($data["new"]["document_root"])."/ ".escapeshellcmd($tmp_symlink));
@@ -319,14 +323,14 @@
exec("cp /usr/local/ispconfig/server/conf-custom/error/".substr(escapeshellcmd($conf["language"]),0,2)."/* ".$error_page_path);
}
else {
- if (file_exists("/usr/local/ispconfig/server/conf-custom/error/fileNotFound.html")){
+ if (file_exists("/usr/local/ispconfig/server/conf-custom/error/400.html")){
exec("cp /usr/local/ispconfig/server/conf-custom/error/*.html ".$error_page_path);
}
else {
exec("cp /usr/local/ispconfig/server/conf/error/".substr(escapeshellcmd($conf["language"]),0,2)."/* ".$error_page_path);
}
}
- exec("chmod -R +r ".$error_page_path);
+ exec("chmod -R a+r ".$error_page_path);
}
// copy the standard index page
@@ -339,9 +343,12 @@
}
else {
exec("cp /usr/local/ispconfig/server/conf/index/standard_index.html_".substr(escapeshellcmd($conf["language"]),0,2)." ".escapeshellcmd($data["new"]["document_root"])."/web/index.html");
+ exec("cp /usr/local/ispconfig/server/conf/index/favicon.ico ".escapeshellcmd($data["new"]["document_root"])."/web/");
+ exec("cp /usr/local/ispconfig/server/conf/index/robots.txt ".escapeshellcmd($data["new"]["document_root"])."/web/");
+ exec("cp /usr/local/ispconfig/server/conf/index/.htaccess ".escapeshellcmd($data["new"]["document_root"])."/web/");
}
}
- exec("chmod +r ".escapeshellcmd($data["new"]["document_root"])."/web/index.html");
+ exec("chmod -R a+r ".escapeshellcmd($data["new"]["document_root"])."/web/");
}
// Create group and user, if not exist
@@ -416,6 +423,20 @@
$rewrite_rules[] = array( 'rewrite_domain' => $data["new"]["domain"],
'rewrite_type' => $data["new"]["redirect_type"],
'rewrite_target' => $data["new"]["redirect_path"]);
+
+ switch($data["new"]["subdomain"]) {
+ case 'www':
+ $rewrite_rules[] = array( 'rewrite_domain' => 'www.'.$data["new"]["domain"],
+ 'rewrite_type' => $data["new"]["redirect_type"],
+ 'rewrite_target' => $data["new"]["redirect_path"]);
+ break;
+ case '*':
+ // TODO
+ //$rewrite_rules[] = array( 'rewrite_domain' => '*'.$alias["domain"],
+ // 'rewrite_type' => $alias["redirect_type"],
+ // 'rewrite_target' => $alias["redirect_path"]);
+ break;
+ }
}
// get alias domains (co-domains and subdomains)
@@ -447,6 +468,19 @@
$rewrite_rules[] = array( 'rewrite_domain' => $alias["domain"],
'rewrite_type' => $alias["redirect_type"],
'rewrite_target' => $alias["redirect_path"]);
+ switch($alias["subdomain"]) {
+ case 'www':
+ $rewrite_rules[] = array( 'rewrite_domain' => 'www.'.$alias["domain"],
+ 'rewrite_type' => $alias["redirect_type"],
+ 'rewrite_target' => $alias["redirect_path"]);
+ break;
+ case '*':
+ // TODO
+ //$rewrite_rules[] = array( 'rewrite_domain' => '*'.$alias["domain"],
+ // 'rewrite_type' => $alias["redirect_type"],
+ // 'rewrite_target' => $alias["redirect_path"]);
+ break;
+ }
}
}
}
--
Gitblit v1.9.1