From 2cb656cf7af0d018c36e36eccb53240a1dd384af Mon Sep 17 00:00:00 2001
From: mcramer <m.cramer@pixcept.de>
Date: Wed, 05 Sep 2012 04:52:45 -0400
Subject: [PATCH] Fixed: "old" style folder protection without comment lines in htaccess (3.0.4.6) get removed, too.
---
server/plugins-available/apache2_plugin.inc.php | 16 +++++++++++-----
1 files changed, 11 insertions(+), 5 deletions(-)
diff --git a/server/plugins-available/apache2_plugin.inc.php b/server/plugins-available/apache2_plugin.inc.php
index a20efd6..5012095 100644
--- a/server/plugins-available/apache2_plugin.inc.php
+++ b/server/plugins-available/apache2_plugin.inc.php
@@ -1745,8 +1745,8 @@
//* Create the .htaccess file
//if(!is_file($folder_path.'.htaccess')) {
$begin_marker = '### ISPConfig folder protection begin ###';
- $end_marker = '### ISPConfig folder protection end ###';
- $ht_file = $begin_marker."\nAuthType Basic\nAuthName \"Members Only\"\nAuthUserFile ".$folder_path.".htpasswd\nrequire valid-user\n".$end_marker."\n\n";
+ $end_marker = "### ISPConfig folder protection end ###\n\n";
+ $ht_file = $begin_marker."\nAuthType Basic\nAuthName \"Members Only\"\nAuthUserFile ".$folder_path.".htpasswd\nrequire valid-user\n".$end_marker;
if(file_exists($folder_path.'.htaccess')) {
$old_content = $app->system->file_get_contents($folder_path.'.htaccess');
@@ -1806,12 +1806,14 @@
//* Remove .htaccess file
if(is_file($folder_path.'.htaccess')) {
$begin_marker = '### ISPConfig folder protection begin ###';
- $end_marker = '### ISPConfig folder protection end ###';
+ $end_marker = "### ISPConfig folder protection end ###\n\n";
$ht_file = $app->system->file_get_contents($folder_path.'.htaccess');
if(preg_match('/' . preg_quote($begin_marker, '/') . '(.*?)' . preg_quote($end_marker, '/') . '/s', $ht_file, $matches)) {
$ht_file = str_replace($matches[0], '', $ht_file);
+ } else {
+ $ht_file = str_replace("AuthType Basic\nAuthName \"Members Only\"\nAuthUserFile ".$folder_path.".htpasswd\nrequire valid-user", '', $ht_file);
}
if(trim($ht_file) == '') {
@@ -1873,7 +1875,7 @@
if(!is_dir($new_folder_path)) $app->system->mkdirpath($new_folder_path);
$begin_marker = '### ISPConfig folder protection begin ###';
- $end_marker = '### ISPConfig folder protection end ###';
+ $end_marker = "### ISPConfig folder protection end ###\n\n";
if($data['old']['path'] != $data['new']['path']) {
@@ -1890,6 +1892,8 @@
if(preg_match('/' . preg_quote($begin_marker, '/') . '(.*?)' . preg_quote($end_marker, '/') . '/s', $ht_file, $matches)) {
$ht_file = str_replace($matches[0], '', $ht_file);
+ } else {
+ $ht_file = str_replace("AuthType Basic\nAuthName \"Members Only\"\nAuthUserFile ".$old_folder_path.".htpasswd\nrequire valid-user", '', $ht_file);
}
if(trim($ht_file) == '') {
@@ -1905,7 +1909,7 @@
//* Create the .htaccess file
if($data['new']['active'] == 'y') {
- $ht_file = $begin_marker."\nAuthType Basic\nAuthName \"Members Only\"\nAuthUserFile ".$new_folder_path.".htpasswd\nrequire valid-user\n".$end_marker."\n\n";
+ $ht_file = $begin_marker."\nAuthType Basic\nAuthName \"Members Only\"\nAuthUserFile ".$new_folder_path.".htpasswd\nrequire valid-user\n".$end_marker;
if(file_exists($new_folder_path.'.htaccess')) {
$old_content = $app->system->file_get_contents($new_folder_path.'.htaccess');
@@ -1930,6 +1934,8 @@
if(preg_match('/' . preg_quote($begin_marker, '/') . '(.*?)' . preg_quote($end_marker, '/') . '/s', $ht_file, $matches)) {
$ht_file = str_replace($matches[0], '', $ht_file);
+ } else {
+ $ht_file = str_replace("AuthType Basic\nAuthName \"Members Only\"\nAuthUserFile ".$new_folder_path.".htpasswd\nrequire valid-user", '', $ht_file);
}
if(trim($ht_file) == '') {
--
Gitblit v1.9.1