HTTP認証機能は、PHPがApacheモジュールとして動作している場合のみ使用できます。 Apache のモジュール PHP スクリプトでは、Header() 関数を使用して「認証が必要です」メッセージをクライアントのブラウザに送信し、名前とパスワードが渡された後、ブラウザにユーザー名とパスワードの入力ウィンドウをポップアップ表示させることができます。 PHP スクリプトを含む URL は、それぞれユーザー名、パスワード、確認方法を表す $PHP_AUTH_USER、$PHP_AUTH_PW、および $PHP_AUTH_TYPE 変数を使用して再度呼び出されます。現在、確認方法は「BASIC」のみ対応しています。
ページ内でユーザーに認証を強制するコード スニペットの例は次のとおりです:
例 2-1. HTTP 認証の例:
if(!isset($PHP_AUTH_USER)) {
Header("WWW-認証: Basic realm="My Realm");
Header("HTTP/1.0 401 Unauthorized");
echo "ユーザーがキャンセルボタンを押した場合に送信するテキスト
";
exit;
}
else {
echo "Hello $PHP_AUTH_USER.
";
echo "パスワードとして $PHP_AUTH_PW を入力しました。
";
}
?>
$PHP_AUTH_USER と $ を単に出力するだけでなく、 PHP_AUTH_PW 変数 値に加えて、ユーザー名とパスワードの有効性をチェックしたり、データベースにクエリしたり、dbm ファイルでユーザーを検索したりすることもできます
バグの多い Internet Explorer ブラウザに注意してください。彼は順序に非常にうるさいです。したがって、HTTP/1.0 401 ヘッダー リクエスト