何らかの理由で、私のサーバーでPHPを使用して動作するために基本認証を取得できません。私はマニュアルページの正確なコードを使用しています:PHPでの基本認証は無限ループになります
<?php
if (!isset($_SERVER['PHP_AUTH_USER'])) {
header('WWW-Authenticate: Basic realm="My Realm"');
header('HTTP/1.0 401 Unauthorized');
echo 'Text to send if user hits Cancel button';
exit;
} else {
echo "<p>Hello {$_SERVER['PHP_AUTH_USER']}.</p>";
echo "<p>You entered {$_SERVER['PHP_AUTH_PW']} as your password.</p>";
}
?>
しかし、私はそれを実行すると、私は決してプロンプトを越えることはできません。
私はこの同じコードを他のサーバーに置くとうまくいきます。
これを引き起こしている可能性があるのは誰ですか?両方のサーバーはWAMPスタックで、Apacheはauth_basic_moduleを有効にしています。 PHP.iniファイルも実質的に同じです。
ヘッダーを見て、自分のユーザー名とパスワードを入力した後、「Authorization:Basic XXXXXX」ヘッダーが送信されています。
2つの 'php.ini'ファイルで' diff'を試してみてください。何か不足している場合に備えてください。あなたはまた、Apacheのconfを比較することもできます。 – ocodo
リファレンス:http://www.php.net/manual/en/features.http-auth.php –