diff options
author | Joas Schilling <nickvergessen@owncloud.com> | 2015-06-23 15:24:21 +0200 |
---|---|---|
committer | Joas Schilling <nickvergessen@owncloud.com> | 2015-06-23 16:45:56 +0200 |
commit | 0db311c9db3b1294625ff06b9cdc6116797bee4b (patch) | |
tree | 6453ff4f11f2d3b8b51de5e980d67e62fd748aec /lib/private/setup.php | |
parent | 4b5324341c152ba14b817c13979a35e15502e39b (diff) | |
download | nextcloud-server-0db311c9db3b1294625ff06b9cdc6116797bee4b.tar.gz nextcloud-server-0db311c9db3b1294625ff06b9cdc6116797bee4b.zip |
Only update the htaccess ErrorDocument links when they are not set yet
Diffstat (limited to 'lib/private/setup.php')
-rw-r--r-- | lib/private/setup.php | 18 |
1 files changed, 14 insertions, 4 deletions
diff --git a/lib/private/setup.php b/lib/private/setup.php index 7ca30e172ec..1ffe074dc34 100644 --- a/lib/private/setup.php +++ b/lib/private/setup.php @@ -402,10 +402,20 @@ class Setup { throw new \OC\HintException('.htaccess file has the wrong version. Please upload the correct version. Maybe you forgot to replace it after updating?'); } - $content = "\n"; - $content.= "ErrorDocument 403 ".\OC::$WEBROOT."/core/templates/403.php\n";//custom 403 error page - $content.= "ErrorDocument 404 ".\OC::$WEBROOT."/core/templates/404.php";//custom 404 error page - @file_put_contents($setupHelper->pathToHtaccess(), $content, FILE_APPEND); //suppress errors in case we don't have permissions for it + $htaccessContent = file_get_contents($setupHelper->pathToHtaccess()); + $content = ''; + if (strpos($htaccessContent, 'ErrorDocument 403') === false) { + //custom 403 error page + $content.= "\nErrorDocument 403 ".\OC::$WEBROOT."/core/templates/403.php"; + } + if (strpos($htaccessContent, 'ErrorDocument 404') === false) { + //custom 404 error page + $content.= "\nErrorDocument 404 ".\OC::$WEBROOT."/core/templates/404.php"; + } + if ($content !== '') { + //suppress errors in case we don't have permissions for it + @file_put_contents($setupHelper->pathToHtaccess(), $content . "\n", FILE_APPEND); + } } public static function protectDataDirectory() { |