Fix WebDAV (and Android Client) not being able to authorize on Debian Squeeze + mod_fcgid installs.
This commit is contained in:
parent
c053863644
commit
8f669880bc
|
@ -1,3 +1,11 @@
|
||||||
|
<IfModule mod_fcgid.c>
|
||||||
|
<IfModule mod_setenvif.c>
|
||||||
|
<IfModule mod_headers.c>
|
||||||
|
SetEnvIfNoCase ^Authorization$ "(.+)" XAUTHORIZATION=$1
|
||||||
|
RequestHeader set XAuthorization %{XAUTHORIZATION}e env=XAUTHORIZATION
|
||||||
|
</IfModule>
|
||||||
|
</IfModule>
|
||||||
|
</IfModule>
|
||||||
ErrorDocument 403 /core/templates/403.php
|
ErrorDocument 403 /core/templates/403.php
|
||||||
ErrorDocument 404 /core/templates/404.php
|
ErrorDocument 404 /core/templates/404.php
|
||||||
<IfModule mod_php5.c>
|
<IfModule mod_php5.c>
|
||||||
|
|
|
@ -356,6 +356,10 @@ class OC{
|
||||||
//try to set the session lifetime to 60min
|
//try to set the session lifetime to 60min
|
||||||
@ini_set('gc_maxlifetime', '3600');
|
@ini_set('gc_maxlifetime', '3600');
|
||||||
|
|
||||||
|
//copy http auth headers for apache+php-fcgid work around
|
||||||
|
if (isset($_SERVER['HTTP_XAUTHORIZATION']) && !isset($_SERVER['HTTP_AUTHORIZATION'])) {
|
||||||
|
$_SERVER['HTTP_AUTHORIZATION'] = $_SERVER['HTTP_XAUTHORIZATION'];
|
||||||
|
}
|
||||||
|
|
||||||
//set http auth headers for apache+php-cgi work around
|
//set http auth headers for apache+php-cgi work around
|
||||||
if (isset($_SERVER['HTTP_AUTHORIZATION']) && preg_match('/Basic\s+(.*)$/i', $_SERVER['HTTP_AUTHORIZATION'], $matches)) {
|
if (isset($_SERVER['HTTP_AUTHORIZATION']) && preg_match('/Basic\s+(.*)$/i', $_SERVER['HTTP_AUTHORIZATION'], $matches)) {
|
||||||
|
|
|
@ -573,7 +573,15 @@ class OC_Setup {
|
||||||
* create .htaccess files for apache hosts
|
* create .htaccess files for apache hosts
|
||||||
*/
|
*/
|
||||||
private static function createHtaccess() {
|
private static function createHtaccess() {
|
||||||
$content = "ErrorDocument 403 ".OC::$WEBROOT."/core/templates/403.php\n";//custom 403 error page
|
$content = "<IfModule mod_fcgid.c>\n";
|
||||||
|
$content.= "<IfModule mod_setenvif.c>\n";
|
||||||
|
$content.= "<IfModule mod_headers.c>\n";
|
||||||
|
$content.= "SetEnvIfNoCase ^Authorization$ \"(.+)\" XAUTHORIZATION=$1\n";
|
||||||
|
$content.= "RequestHeader set XAuthorization %{XAUTHORIZATION}e env=XAUTHORIZATION\n";
|
||||||
|
$content.= "</IfModule>\n";
|
||||||
|
$content.= "</IfModule>\n";
|
||||||
|
$content.= "</IfModule>\n";
|
||||||
|
$content.= "ErrorDocument 403 ".OC::$WEBROOT."/core/templates/403.php\n";//custom 403 error page
|
||||||
$content.= "ErrorDocument 404 ".OC::$WEBROOT."/core/templates/404.php\n";//custom 404 error page
|
$content.= "ErrorDocument 404 ".OC::$WEBROOT."/core/templates/404.php\n";//custom 404 error page
|
||||||
$content.= "<IfModule mod_php5.c>\n";
|
$content.= "<IfModule mod_php5.c>\n";
|
||||||
$content.= "php_value upload_max_filesize 512M\n";//upload limit
|
$content.= "php_value upload_max_filesize 512M\n";//upload limit
|
||||||
|
|
Loading…
Reference in New Issue