Autenticazione HTTP con Altervista e PHP 5 (fcgi in cenerale)

Aggiornando il sito ho fatto anche un bel plugin (ne parlerò prima o poi) che crea in automatico un .tar.gz della directory fp-content.

Ho fatto che per il browser richiede il login all’area di amministrazione con i cooke, mentre per wget richiede l’http auth.

In locale funzionava tutto, mentre quando l’ho provato dopo l’aggiornamento del sito non andava.

La spiegazione è semplice, ma io ho impiegato abbastanza tempo per fare tutto.

Io ho lavorato in locale con php5 come modulo di apache (ci mancherebbe altro!), mentre su av c’è php4 come modulo di apache e chi vuole php5 si deve accontentare di averlo come fcgi.

Comunque dopo averlo capito in poco tempo ho preso e modificato lo script (ora è ibrido).

Per prima cosa servono gli htaccess col mod_rewrite.

Modificate il file .htaccess così:

RewriteEngine on
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization},L]

Ovviamente se avete già il mod_rewrite non modificate le impostazioni

Poi modificate il vostro script php:

list($_SERVER['PHP_AUTH_USER'], $_SERVER['PHP_AUTH_PW']) = explode(':' , base64_decode(substr($_SERVER['REDIRECT_HTTP_AUTHORIZATION'], 6)));

Questa l’ho testata su altervista, altrimenti se non funziona mettete HTTP_AUTHORIZATION al posto di REDIRECT_HTTP_AUTHORIZATION.