10.9 HTTP-Basic-Authentifizierung einsetzen

Problem

Sie möchten PHP verwenden, um Teile Ihrer Website durch Passwörter zu schützen. Anstatt die Passwörter in einer externen Datei zu speichern und den Webserver die Authentifizierung durchführen zu lassen, möchten Sie ein PHP-Programm für die Logik der Passwortüberprüfung verwenden.

Lösung

Die globalen Variablen $_SERVER['PHP_AUTH_USER'] und $_SERVER['PHP_AUTH_PW'] enthalten den vom Benutzer angegebenen Namen und sein Passwort, sofern vorhanden. Sie können den Zugriff auf eine Seite verweigern, indem Sie einen WWW-Authenticate-Header senden, der den Authentifizierungs-Realm als Teil einer Antwort mit dem Status-Code 401 angibt:

header('WWW-Authenticate: Basic realm="Meine Website"'); header('HTTP/1.0 ...

Get PHP 5 Kochbuch now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.