diff options
author | Robin Appelman <icewind1991@gmail.com> | 2011-10-13 16:31:01 +0200 |
---|---|---|
committer | Robin Appelman <icewind1991@gmail.com> | 2011-10-13 16:33:39 +0200 |
commit | f1fd374a6f078031e231c89c9fb8ca4b33feba20 (patch) | |
tree | dde64ff97b1dbbfd861c6b64576e50f64f4ab39a | |
parent | d7fa2a0f7770acb36c49ea60348bb583e53b04e7 (diff) | |
download | nextcloud-server-f1fd374a6f078031e231c89c9fb8ca4b33feba20.tar.gz nextcloud-server-f1fd374a6f078031e231c89c9fb8ca4b33feba20.zip |
webdav workaround for apache+php-cgi
-rw-r--r-- | .htaccess | 4 | ||||
-rw-r--r-- | lib/base.php | 8 | ||||
-rw-r--r-- | lib/setup.php | 4 |
3 files changed, 16 insertions, 0 deletions
diff --git a/.htaccess b/.htaccess index 8763a8bcde5..dd49442e371 100644 --- a/.htaccess +++ b/.htaccess @@ -5,4 +5,8 @@ php_value post_max_size 512M php_value memory_limit 128M SetEnv htaccessWorking true </IfModule> +<IfModule !mod_php5.c> +RewriteEngine on +RewriteRule .* - [env=HTTP_AUTHORIZATION:%{HTTP:Authorization},last] +</IfModule> Options -Indexes diff --git a/lib/base.php b/lib/base.php index 0156febe231..57a3ae8669b 100644 --- a/lib/base.php +++ b/lib/base.php @@ -81,6 +81,14 @@ class OC{ date_default_timezone_set('Europe/Berlin'); ini_set('arg_separator.output','&'); + //set http auth headers for apache+php-cgi work around + if (preg_match('/Basic\s+(.*)$/i', $_SERVER['HTTP_AUTHORIZATION'], $matches)) + { + list($name, $password) = explode(':', base64_decode($matches[1])); + $_SERVER['PHP_AUTH_USER'] = strip_tags($name); + $_SERVER['PHP_AUTH_PW'] = strip_tags($password); + } + // calculate the documentroot OC::$DOCUMENTROOT=realpath($_SERVER['DOCUMENT_ROOT']); OC::$SERVERROOT=str_replace("\\",'/',substr(__FILE__,0,-13)); diff --git a/lib/setup.php b/lib/setup.php index 355d979dc65..252eaaeea18 100644 --- a/lib/setup.php +++ b/lib/setup.php @@ -273,6 +273,10 @@ class OC_Setup { $content.= "php_value post_max_size 512M\n"; $content.= "SetEnv htaccessWorking true\n"; $content.= "</IfModule>\n"; + $content.= "<IfModule !mod_php5.c>\n"; + $content.= "RewriteEngine on\n"; + $content.= "RewriteRule .* - [env=HTTP_AUTHORIZATION:%{HTTP:Authorization},last]\n"; + $content.= "</IfModule>\n"; $content.= "Options -Indexes\n"; @file_put_contents(OC::$SERVERROOT.'/.htaccess', $content); //supress errors in case we don't have permissions for it |