From 80e7b0d7d17b0e9581fa56be484b8772d82261de Mon Sep 17 00:00:00 2001
From: tbrehm <t.brehm@ispconfig.org>
Date: Wed, 18 Nov 2009 11:19:42 -0500
Subject: [PATCH] Added code to delete old remote sessions.

---
 server/plugins-available/apache2_plugin.inc.php |   27 +++++++++++++++++++++++++--
 1 files changed, 25 insertions(+), 2 deletions(-)

diff --git a/server/plugins-available/apache2_plugin.inc.php b/server/plugins-available/apache2_plugin.inc.php
index d782b57..5f1d7cd 100644
--- a/server/plugins-available/apache2_plugin.inc.php
+++ b/server/plugins-available/apache2_plugin.inc.php
@@ -538,6 +538,10 @@
 			$this->_exec("chmod 777 ".escapeshellcmd($data["new"]["document_root"]."/tmp"));
 		}
 		
+		// Change the owner of the error log to the owner of the website
+		if(!@is_file($data["new"]["document_root"]."/log/error.log")) exec('touch '.escapeshellcmd($data["new"]["document_root"])."/log/error.log");
+		$this->_exec("chown $username:$groupname ".escapeshellcmd($data["new"]["document_root"])."/log/error.log");
+		
 		
 		// Create the vhost config file
 		$app->load('tpl');
@@ -574,7 +578,17 @@
 		// Rewrite rules
 		$rewrite_rules = array();
 		if($data["new"]["redirect_type"] != '') {
+			$data["new"]["redirect_path"] = str_replace('../','',$data["new"]["redirect_path"]);
 			if(substr($data["new"]["redirect_path"],-1) != '/') $data["new"]["redirect_path"] .= '/';
+			if($data["new"]["redirect_type"] != 'R' && substr($data["new"]["redirect_path"],0,4) != 'http') {
+				if($data["new"]["redirect_path"] == '/') {
+					$data["new"]["redirect_path"] = $data["new"]["document_root"]."/web/";
+				} else {
+					if(substr($data["new"]["redirect_path"],0,1) != '/') $data["new"]["redirect_path"] = '/'.$data["new"]["redirect_path"];
+					$data["new"]["redirect_path"] = $data["new"]["document_root"]."/web".$data["new"]["redirect_path"];
+				}
+			}
+			
 			$rewrite_rules[] = array(	'rewrite_domain' 	=> $data["new"]["domain"],
 										'rewrite_type' 		=> ($data["new"]["redirect_type"] == 'no')?'':'['.$data["new"]["redirect_type"].']',
 										'rewrite_target' 	=> $data["new"]["redirect_path"]);
@@ -621,7 +635,16 @@
 				$app->log("Add server alias: $alias[domain]",LOGLEVEL_DEBUG);
 				// Rewriting
 				if($alias["redirect_type"] != '') {
-					if(substr($data["new"]["redirect_path"],-1) != '/') $data["new"]["redirect_path"] .= '/';
+					$alias["redirect_path"] = str_replace('../','',$alias["redirect_path"]);
+					if(substr($alias["redirect_path"],-1) != '/') $alias["redirect_path"] .= '/';
+					if($alias["redirect_type"] != 'R' && substr($alias["redirect_path"],0,4) != 'http') {
+						if($alias["redirect_path"] == '/') {
+							$alias["redirect_path"] = $data["new"]["document_root"]."/web/";
+						} else {
+							if(substr($alias["redirect_path"],0,1) != '/') $alias["redirect_path"] = '/'.$alias["redirect_path"];
+							$alias["redirect_path"] = $data["new"]["document_root"]."/web".$alias["redirect_path"];
+						}
+					}
 					$rewrite_rules[] = array(	'rewrite_domain' 	=> $alias["domain"],
 												'rewrite_type' 		=> ($alias["redirect_type"] == 'no')?'':'['.$alias["redirect_type"].']',
 												'rewrite_target' 	=> $alias["redirect_path"]);
@@ -799,7 +822,7 @@
 		//* Create .htaccess and .htpasswd file for website statistics
 		if(!is_file($data["new"]["document_root"].'/web/stats/.htaccess') or $data["old"]["document_root"] != $data["new"]["document_root"]) {
 			if(!is_dir($data["new"]["document_root"].'/web/stats')) mkdir($data["new"]["document_root"].'/web/stats');
-			$ht_file = "AuthType Basic\nAuthName \"Members Only\"\nAuthUserFile ".$data["new"]["document_root"]."/.htpasswd_stats\n<limit GET PUT POST>\nrequire valid-user\n</limit>";
+			$ht_file = "AuthType Basic\nAuthName \"Members Only\"\nAuthUserFile ".$data["new"]["document_root"]."/.htpasswd_stats\nrequire valid-user";
 			file_put_contents($data["new"]["document_root"].'/web/stats/.htaccess',$ht_file);
 			chmod($data["new"]["document_root"].'/web/stats/.htaccess',0664);
 			unset($ht_file);

--
Gitblit v1.9.1