PHP バージョン 5.3.10
私は Windows ネットワークで Apache を使用していますが、$_SERVER['REMOTE_USER'] を呼び出すと、ユーザーがパスワードの有効期限の猶予期間 (パスワードの有効期限が切れるまで x 日あります) に入るまでは問題なく動作しますが、表示されるのは次のメッセージだけです。
認証が必要です サーバーは、要求されたドキュメントへのアクセスが認証されていることを確認できませんでした。入力した資格情報が間違っている (パスワードが間違っているなど) か、必要な資格情報を入力する方法をブラウザーが認識していません。
これをキャッチして、より役立つメッセージをユーザーに提示する方法はありますか?
更新 有用な情報を提供してくれたフレッドに感謝します。次の行を .htaccess に追加しました
ErrorDocument 401 /401.php
401.php を .htaccess と同じフォルダーに追加すると、サイトにアクセスしようとするとすぐに次のエラーが発生しました。
承認が必要です このサーバーは、要求されたドキュメントへのアクセスが承認されていることを確認できませんでした。入力した認証情報が間違っている (パスワードが間違っているなど) か、必要な認証情報を入力する方法をブラウザーが認識していません。
さらに、ErrorDocument を使用して要求を処理しようとしたときに、401 Authorization Required エラーが発生しました。
テストとして、私も追加しました
ErrorDocument 404 /404.php
代替ページが見つからないというメッセージが正しく表示されました。
「エラーをキャッチするには、関数を使用してファイルに書き込むだけです」という意味がわかりません。例はありますか?以下は、ユーザーのユーザー名を取得するために使用するコードです。
$domain = $_SERVER['REMOTE_USER'];
$domainarray = explode("\\",$domain);
$username = strtolower ($domainarray[1]);