Uwaga: poniższe instrukcje nie dotyczą sytuacji, gdy korzystasz z autoryzacji za pomocą plików htaccess i htpasswd, ale do przypadku, gdy w PHP używasz zmiennych globalnych PHP_AUTH_USER i PHP_AUTH_PW.
Na naszym webhostingu używamy PHP w trybie FastCGI, gdzie niezbędne nagłówki nie są przekazywane do PHP. Trzeba im trochę pomóc.
1. Na początku pliku www/.htaccess dostępnego na Twoim webhostingu umieść następujący kod:
RewriteEngine on
RewriteEngine on RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization},L]
2. Zmodyfikuj swoją aplikację PHP w taki sposób, że przed każdym punktem kontrolnym logowania (przed sprawdzeniem zmiennych PHP_AUTH_USER i PHP_AUTH_PW) umieścisz następujące polecenie, które uzupełni brakujące zmienne globalne:
list($_SERVER['PHP_AUTH_USER'], $_SERVER['PHP_AUTH_PW'])
= explode(':' , base64_decode(substr($_SERVER['HTTP_AUTHORIZATION'], 6)));
Dodatkowe informacje są dostępne pod poniższym linkiem:
HTTP Authentication with PHP running as CGI/SuExec