From 236d796455c44b0ca40ca6582ae1fbb614f8bf21 Mon Sep 17 00:00:00 2001
From: tbrehm <t.brehm@ispconfig.org>
Date: Tue, 03 Jan 2012 06:08:04 -0500
Subject: [PATCH] Fixed: FS#1858 - Old SSH-RSA Public Key not deleted from authorized_keys when deleted or changed
---
server/plugins-available/apache2_plugin.inc.php | 24 ++++++++++++++++++++----
1 files changed, 20 insertions(+), 4 deletions(-)
diff --git a/server/plugins-available/apache2_plugin.inc.php b/server/plugins-available/apache2_plugin.inc.php
index ffc9feb..3cba835 100644
--- a/server/plugins-available/apache2_plugin.inc.php
+++ b/server/plugins-available/apache2_plugin.inc.php
@@ -1115,7 +1115,13 @@
if($apache_online_status_before_restart && !$apache_online_status_after_restart) {
$app->log('Apache did not restart after the configuration change for website '.$data['new']['domain'].' Reverting the configuration. Saved non-working config as '.$vhost_file.'.err',LOGLEVEL_WARN);
copy($vhost_file,$vhost_file.'.err');
- copy($vhost_file.'~',$vhost_file);
+ if(is_file($vhost_file.'~')) {
+ //* Copy back the last backup file
+ copy($vhost_file.'~',$vhost_file);
+ } else {
+ //* There is no backup file, so we create a empty vhost file with a warning message inside
+ file_put_contents($vhost_file,"# Apache did not start after modifying this vhost file.\n# Please check file $vhost_file.err for syntax errors.");
+ }
$app->services->restartService('httpd','restart');
}
} else {
@@ -1335,12 +1341,18 @@
}
//* Create the folder path, if it does not exist
- if(!is_dir($folder_path)) exec('mkdir -p '.$folder_path);
+ if(!is_dir($folder_path)) {
+ exec('mkdir -p '.$folder_path);
+ chown($folder_path,$website['system_user']);
+ chgrp($folder_path,$website['system_group']);
+ }
//* Create empty .htpasswd file, if it does not exist
if(!is_file($folder_path.'.htpasswd')) {
touch($folder_path.'.htpasswd');
chmod($folder_path.'.htpasswd',0755);
+ chown($folder_path.'.htpasswd',$website['system_user']);
+ chgrp($folder_path.'.htpasswd',$website['system_group']);
$app->log('Created file '.$folder_path.'.htpasswd',LOGLEVEL_DEBUG);
}
@@ -1378,7 +1390,9 @@
//if(!is_file($folder_path.'.htaccess')) {
$ht_file = "AuthType Basic\nAuthName \"Members Only\"\nAuthUserFile ".$folder_path.".htpasswd\nrequire valid-user";
file_put_contents($folder_path.'.htaccess',$ht_file);
- chmod($folder_path.'.htpasswd',0755);
+ chmod($folder_path.'.htaccess',0755);
+ chown($folder_path.'.htaccess',$website['system_user']);
+ chgrp($folder_path.'.htaccess',$website['system_group']);
$app->log('Created file '.$folder_path.'.htaccess',LOGLEVEL_DEBUG);
//}
@@ -1490,7 +1504,9 @@
$ht_file = "AuthType Basic\nAuthName \"Members Only\"\nAuthUserFile ".$new_folder_path.".htpasswd\nrequire valid-user";
file_put_contents($new_folder_path.'.htaccess',$ht_file);
chmod($new_folder_path.'.htpasswd',0755);
- $app->log('Created file '.$new_folder_path.'.htaccess',LOGLEVEL_DEBUG);
+ chown($folder_path.'.htpasswd',$website['system_user']);
+ chgrp($folder_path.'.htpasswd',$website['system_group']);
+ $app->log('Created file '.$new_folder_path.'.htpasswd',LOGLEVEL_DEBUG);
}
//* Remove .htaccess file
--
Gitblit v1.9.1