git.gnu.io has moved to IP address 209.51.188.249 -- please double check where you are logging in.

Commit 22f82713 authored by Brion Vibber's avatar Brion Vibber

Workaround for HTTP authentication in the API when running PHP as CGI/FastCGI....

Workaround for HTTP authentication in the API when running PHP as CGI/FastCGI. Example rewrite lines added as comments in htaccess.sample, API tweaked to accept alternate environment var form.
parent 4761c07a
......@@ -5,6 +5,11 @@
RewriteBase /mublog/
## Uncomment these if having trouble with API authentication
## when PHP is running in CGI or FastCGI mode.
#RewriteCond %{HTTP:Authorization} ^(.*)
#RewriteRule ^(.*) - [E=HTTP_AUTHORIZATION:%1]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule (.*) index.php?p=$1 [L,QSA]
......
......@@ -294,11 +294,15 @@ class ApiAuthAction extends ApiAction
function basicAuthProcessHeader()
{
if (isset($_SERVER['AUTHORIZATION'])
|| isset($_SERVER['HTTP_AUTHORIZATION'])
) {
$authorization_header = isset($_SERVER['HTTP_AUTHORIZATION'])
? $_SERVER['HTTP_AUTHORIZATION'] : $_SERVER['AUTHORIZATION'];
$authHeaders = array('AUTHORIZATION',
'HTTP_AUTHORIZATION',
'REDIRECT_HTTP_AUTHORIZATION'); // rewrite for CGI
$authorization_header = null;
foreach ($authHeaders as $header) {
if (isset($_SERVER[$header])) {
$authorization_header = $_SERVER[$header];
break;
}
}
if (isset($_SERVER['PHP_AUTH_USER'])) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment