PHP で HTTP 401 Unauthorized エラーを処理し、Web サイトのセキュリティを強化し、HTTP 401 エラーを送信します: header('HTTP/1.1 401 Unauthorized');http_response_code(401);認証を追加: header('WWW-Authenticate: Basic realm=" ;レルム名"');実際のケース: secure_page.php は基本認証を使用して HTTP 401 エラーを処理します。
#PHP HTTP 401 Unauthorized エラーをマスターし、Web サイトのセキュリティを強化する
はじめに# HTTP 401 Unauthorized エラーは、クライアントが認証を必要とするリソースにアクセスしようとしたが、指定された資格情報が無効か存在しなかったことを示すサーバー応答です。この種のエラーを処理することは、Web サイトを安全に保つために重要です。この記事では、PHP での HTTP 401 Unauthorized エラーの処理について詳しく説明し、実際のケースを示します。
HTTP 401 エラーの処理PHP では、
header() 関数を通じて HTTP 401 エラーを送信できます: <div class="code" style="position:relative; padding:0px; margin:0px;"><pre class='brush:php;toolbar:false;'>header('HTTP/1.1 401 Unauthorized');</pre><div class="contentsignin">ログイン後にコピー</div></div>
さらに、HTTP ステータス コードは
関数を使用して設定できます: <div class="code" style="position:relative; padding:0px; margin:0px;"><pre class='brush:php;toolbar:false;'>http_response_code(401);</pre><div class="contentsignin">ログイン後にコピー</div></div>
HTTP 401 エラーを解決するには、認証情報の追加を要求できます。一般的な方法は、基本的な HTTP 認証を使用することです。
header('WWW-Authenticate: Basic realm="My Realm"');
これにより、ユーザーにユーザー名とパスワードの入力が求められます。認証が成功すると、
$_SERVER['PHP_AUTH_USER'] 変数と $_SERVER['PHP_AUTH_PW']
変数にそれぞれユーザー名とパスワードが含まれます。
secure_page.php
という名前の保護されたページがあり、HTTP 401 エラーを処理して基本認証を強制したいとします。<div class="code" style="position:relative; padding:0px; margin:0px;"><pre class='brush:php;toolbar:false;'><?php
if (!isset($_SERVER['PHP_AUTH_USER']) || !isset($_SERVER['PHP_AUTH_PW'])) {
header('HTTP/1.1 401 Unauthorized');
header('WWW-Authenticate: Basic realm="Secure Page"');
exit;
}
$username = $_SERVER['PHP_AUTH_USER'];
$password = $_SERVER['PHP_AUTH_PW'];
// 在数据库中检查用户名和密码
$valid = check_credentials($username, $password);
if (!$valid) {
header('HTTP/1.1 401 Unauthorized');
exit;
}
// 验证成功,显示受保护页面
?></pre><div class="contentsignin">ログイン後にコピー</div></div>
この関数は、データベースにクエリを実行し、指定されたユーザー名とパスワードを検証します。
PHP の HTTP 401 エラーを深く理解すると、認証リクエストを適切に処理し、基本認証を強制することで Web サイトのセキュリティを向上させることができます。これは機密データを保護し、不正アクセスを防ぐのに役立ちます。
以上がPHP HTTP 401 Unauthorized エラーをマスターし、Web サイトのセキュリティを向上させますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。