.htaccess - REMOTE_USER not always set in basic authentication when changing to running PHP as a CGI module
Solution:
Only the
REDIRECT_REMOTE_USER
gets set to the username
You could perhaps auto-include a short PHP script that sets REMOTE_USER
(from REDIRECT_REMOTE_USER
) before your main script runs.
For example, set the auto_prepend_file
in your .user.ini
file in the root
auto_prepend_file=/path/to/fix-http-authentication.php
And then in your fix-http-authentication.php
script, something like:
<?php
if (empty($_SERVER['REMOTE_USER']) && isset($_SERVER['REDIRECT_REMOTE_USER'])) {
$_SERVER['REMOTE_USER'] = $_SERVER['REDIRECT_REMOTE_USER'];
}
Answer
Solution:
Try putting this in your .htaccess after RewriteEngine On
RewriteRule .* - [E=REMOTE_USER:%{HTTP:Authorization}]
That should set the REMOTE_USER environment variable when using CGI.
Source