401

Unauthorized

公式 サブステータスコード
リクエストは不正なものでした

HTTPステータスコード401の仕様

401 Unauthorizedステータスコードは、ターゲットリソースに対する有効な認証情報がないため、リクエストが適用されていないことを示す。 401 Unauthorized応答を生成するサーバーは、ターゲットリソースに適用可能な少なくとも一つのチャレンジを含むWWW-Authenticateヘッダーフィールドを送信しなければならない(MUST)。リクエストが認証証明書を含んでいた場合、401 Unauthorized応答はその認証証明書に対して認可が拒否されたことを示す。 ユーザーエージェントは、新規または置換されたAuthorizationヘッダー フィールドを持つリクエストを繰り返してもよい[MAY]。 401 Unauthorized応答が前の応答と同じチャレンジを含み、ユーザーエージェントが すでに少なくとも一度は認証を試みている場合、ユーザーエージェントは、通常、 関連する診断情報を含むので、同封の表現をユーザーに提示するべきである (SHOULD)。

出典・引用元はこちら 401 Unauthorized HTTP Status Code は、3.1 のセクションで規定されています。

PHPで401ステータスコードを投げるには?

WebページでHTTPステータスコード401を投げるには、PHPの関数http_response_codeを使用することができます。構文は次のとおりです: http_response_code(401) (PHP 5 >= 5.4.0, PHP 7, PHP 8)

401 HTTPステータスコードのテスト

クライアント側でHTTPステータスコード(ここでは401 Unauthorized)などを表示できるようにするためには、F12で開発コンソールを開く必要があります。次に、「ネットワーク」タブに移動します。これでページを開くことができ、ネットワークタブにウェブサイト(例のindex.php)が表示されるはずです。これを選択し、次にHerderセクションを選択する必要があります。すると、ユーザーは次のような結果を見ることができます:

ステータスコード 401 Unauthorized
概要
URL: https://http-statuscode.com/errorCodeExample.php?code=401
ステータス: 401 Unauthorized
それらの: Network
IPアドレス: XX.XX.XX.XX
ステータスコード 401 Unauthorized

ステータスコード401のエラーページを自作する方法

401 Unauthorizedエラーページの作成は、「Apache」「NGINX」どちらのウェブサーバーでも比較的簡単に行うことができます。

Apache Webserver

Webサーバー「Apache」は、インターネット上で最も一般的なWebサーバーの1つです。Apache」で独自の401 Unauthorizedエラーページを作成するためには、以下のファイルを変更する必要があります。

File: .htaccess
ErrorDocument 401 /errors/401.html

NGINX Webserver

Webサーバー「Apache」と同様に、「NGINX」もインターネット上で広く利用されています。NGINX」で独自の401 Unauthorizedエラーページを作成するためには、以下のファイルを変更する必要があります。

File: sites-enabled/default
error_page 401 /401.html;
location = /401.html {
    root /usr/share/nginx/html;
    internal;
}

401ステータスコードのブラウザ互換性

Chrome Yes
Edge Yes
Firefox Yes
Opera Yes
Safari Yes
Chrome Android Yes
Firefox for Android Yes
Opera Android Yes
Safari on iOS Yes
Internet Yes
WebView Android Yes

プログラミング言語における定数

HttpStatusCode.Unauthorized
http.StatusUnauthorized
Response::HTTP_UNAUTHORIZED
httplib.UNAUTHORIZED
http.client.UNAUTHORIZED
http.HTTPStatus.UNAUTHORIZED
:unauthorized

401 ステータスコードのサブステータスコード

サブステータスコードは純粋に技術的なものであり、決してユーザーに送信されるべきではありません。例えば、ステータスコード401.1が投げられた場合、それは記録されるかもしれませんが、ステータスコード401はユーザーに送信されます。:
401.1 Logon failed
HTTP IIS, 非公式
401.2 Logon failed due to server configuration
HTTP IIS, 非公式
401.3 Unauthorized due to ACL on resource
HTTP IIS, 非公式
401.4 Authorization failed by filter
HTTP IIS, 非公式
401.5 Authorization failed by ISAPI/CGI application
HTTP IIS, 非公式
401.501 Access Denied: Too many requests from the same client IP; Dynamic IP Restriction Concurrent request rate limit reached.
HTTP IIS, 非公式
401.502 Forbidden: Too many requests from the same client IP; Dynamic IP Restriction Maximum request rate limit reached.
HTTP IIS, 非公式
401.503 Access Denied: the IP address is included in the Deny list of IP Restriction
HTTP IIS, 非公式
401.504 Access Denied: the host name is included in the Deny list of IP Restriction
HTTP IIS, 非公式

HTTPステータスコード401に関するミームを楽しませる

ブログ記事

WordPressのxmlrpc.phpファイルによる攻撃からの保護

第1節 xmlrpc.phpファイルとは何か、どこにあるのかxmlrpc.phpファイルは、ウェブサイトを作成・管理するための世界有数のコンテンツ管理システム(CMS)であるWordPressの重要なコンポーネントです。もともとは...

著者: Tony Brüser
著者: Tony Brüser

トニー・ブリュザーは、HTTPステータスコードにこだわりのある熱心なウェブ開発者だ。

LinkedInGitHub