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 the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.