recursal/MDN huggingface dataset:
308 Permanent Redirect
======================

The HyperText Transfer Protocol (HTTP) **`308 Permanent Redirect`** リダイレクトステータスコードは、リクエストされたリソースが `Location` ヘッダーで示された URL へ完全に移動したことを示します。ブラウザーはこのページにリダイレクトし、検索エンジンはリソースへのリンクを更新します (「SEO 用語」では、「リンクジュース」が新しい URL に送られたと言われます)。

`301` の場合は不正に `GET` メソッドに変更される可能性があるのに対し、このコードの場合はリクエストメソッドと本文が変更されません。

**メモ:** ウェブアプリケーションによっては、 `308 Permanent Redirect` を標準外かつ他の目的に使用していることがあります。例えば、 Google Drive はアップロードが不完全に停止したことを表すために、 `308 Resume Incomplete` レスポンスを使用します。[1]

ステータス
-----
```

308 Permanent Redirect
```

仕様書
---

| 仕様書 | 題名 |
| --- | --- |
| RFC 7538, セクション 3: 308 Permanent Redirect | The Hypertext Transfer Protocol Status Code 308 (Permanent Redirect) |

ブラウザーの対応
--------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

関連情報
----

* `301 Moved Permanently`
* `302 Found`: 一時リダイレクト
511 Network Authentication Required
===================================

HTTP **`511 Network Authentication Required`** レスポンスステータスコードは、クライアントがネットワークアクセスを取得するために認証する必要があることを示します。

この状態は、オリジンサーバーによって生成されるのではなく、ネットワークへのアクセスを制御するプロキシをインターセプトすることによって生成されます。

ネットワークオペレータは、アクセスを許可する前 (インターネットカフェや空港などで) に何らかの認証、条件の受け入れ、またはその他のユーザー対話を必要とすることがあります。彼らはしばしば、Media Access Control (MAC) アドレスを使用していないクライアントを識別します。

ステータス
-----
```

511 Network Authentication Required
```

仕様
--

| 仕様書 | タイトル |
| --- | --- |
| RFC 6585, セクション 6: 511 Network Authentication Required | Additional HTTP Status Codes |

関連情報
----

* Proxy server
413 Payload Too Large
=====================

HTTP **`413 Payload Too Large`** レスポンスステータスコードは、リクエストエンティティがサーバーによって定義された制限よりも大きいことを示します。サーバーは接続を閉じるか `Retry-After` ヘッダーフィールドを返します。

ステータス
-----
```

413 Payload Too Large
```

仕様書
---

| 仕様書 | 題名 |
| --- | --- |
| RFC 7231, セクション 6.5.11: 413 Payload Too Large | Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content |

関連情報
----

* `Connection`
* `Retry-After`
422 Unprocessable Entity
========================

The HyperText Transfer Protocol (HTTP) の **`422 Unprocessable Entity`** 応答状態コードは、サーバーが要求本文のコンテンツ型を理解でき、要求本文の構文が正しいものの、中に含まれている指示が処理できなかったことを表します。

**警告:** クライアントは修正なしにこの要求を繰り返すべきではありません。

状態
--
```

422 Unprocessable Entity
```

仕様書
---

| 仕様書 | 題名 |
| --- | --- |
| RFC 4918, セクション 11.2: 422 Unprocessable Entity | HTTP Extensions for Web Distributed Authoring and Versioning (WebDAV) |
300 Multiple Choices
====================

HTTP の **`300 Multiple Choices`** リダイレクト状態コードは、リクエストに対して複数のレスポンスがあることを示します。ユーザーエージェントやユーザーは、その内から一つを選択します。レスポンスを一つ選択する方法は標準化されていないため、このレスポンスコードはほとんど使われていません。

サーバーが推奨する選択肢がある場合は、 `Location` ヘッダーを生成してください。

状態
--
```

300 Multiple Choices
```

仕様書
---

| 仕様書 | 題名 |
| --- | --- |
| RFC 7231, セクション 6.4.1: 300 Multiple Choices | Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content |

関連情報
----

* `301` `Moved Permanently`
* `302` `Found` (一時リダイレクト)
* `308` `Permanent Redirect`
407 Proxy Authentication Required
=================================

HTTP \*\*`407 Proxy Authentication Required` \*\*クライアントエラーというステータスのレスポンスコードは、リクエストが適用されていないことを示しています。なぜなら、ブラウザーと要求されたリソースにアクセスできるサーバーの間にあるプロキシサーバーに有効な認証情報が不足しているためです。

このステータスは、正しい認証の仕方に関する情報を含む `Proxy-Authenticate` ヘッダーと共に送信されます。

ステータス
-----
```

407 Proxy Authentication Required
```

レスポンス例
------
```

HTTP/1.1 407 Proxy Authentication Required
Date: Wed, 21 Oct 2015 07:28:00 GMT
Proxy-Authenticate: Basic realm="Access to internal site"
```

仕様
--

| Specification | Title |
| --- | --- |
| RFC 7235, セクション 3.2: 407 Proxy Authentication Required | HTTP/1.1: Authentication |

ブラウザー互換性
--------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

参照
--

* HTTP authentication
* `WWW-Authenticate`
* `Authorization`
* `Proxy-Authorization`
* `Proxy-Authenticate`
* `401`, `403`
501 Not Implemented
===================

HyperText Transfer Protocol (HTTP) の **`501 Not Implemented`** サーバーエラーレスポンスコードは、**サーバーがリクエストを満たすのに必要な機能に対応していないこと**を示します。

このステータスは `Retry-After` ヘッダーを送信することもでき、いつまでに機能を機能がサポートされているかどうかを確認するためのチェックバックのタイミングを要求元に伝えることができます。

`501` は、サーバーがリクエストメソッドを理解できず、あるリソースに対して対応することができない場合のレスポンスに適切です。サーバーが対応する必要がある（したがって、 `501` を返す必要がない）メソッドは `GET` と `HEAD` だけです。

サーバーがそのメソッドを理解して*いて*、意図的に対応していない場合は、適切なレスポンスは `405 Method Not Allowed` です。

**メモ:**

* 501 エラーは修正できるものではありませんが、アクセスしようとしているウェブサーバーで修正が必要です。
* 501 レスポンスは、その他のヘッダーのキャッシュの指示がない限り、既定でキャッシュ可能です。

ステータス
-----
```

501 Not Implemented
```

仕様書
---

| Specification |
| --- |
| HTTP Semantics # status.501 |

ブラウザーの互換性
---------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.
206 Partial Content
===================

HTTP **`206 Partial Content`** は成功ステータスレスポンスコードで、そのリクエストが成功したこと、そしてリクエストの `Range` ヘッダーに記述された通り、要求された範囲のデータが本文に含まれていることを示します。

もし範囲が 1 つしかないのであれば、レスポンス全体の `Content-Type` が文書のタイプに設定され、 `Content-Range` が提供されます。

複数の範囲が返される場合は、 `Content-Type` が `multipart/byteranges` に設定され、それぞれの断片が 1 つの範囲を表し、`Content-Range` および `Content-Type` がそれを説明します。

ステータス
-----
```

206 Partial Content
```

例
-

1 つの範囲を含むレスポンスの例:
```

HTTP/1.1 206 Partial Content
Date: Wed, 15 Nov 2015 06:25:24 GMT
Last-Modified: Wed, 15 Nov 2015 04:58:08 GMT
Content-Range: bytes 21010-47021/47022
Content-Length: 26012
Content-Type: image/gif

... 26012 bytes of partial image data ...
```


複数の範囲を含むレスポンスの例:
```

HTTP/1.1 206 Partial Content
Date: Wed, 15 Nov 2015 06:25:24 GMT
Last-Modified: Wed, 15 Nov 2015 04:58:08 GMT
Content-Length: 1741
Content-Type: multipart/byteranges; boundary=String_separator

--String_separator
Content-Type: application/pdf
Content-Range: bytes 234-639/8000

...the first range...
--String_separator
Content-Type: application/pdf
Content-Range: bytes 4590-7999/8000

...the second range
--String_separator--
```

仕様書
---

| 仕様書 | 題名 |
| --- | --- |
| RFC 7233, セクション 4.1: 206 Partial Content | Hypertext Transfer Protocol (HTTP/1.1): Range Requests |

ブラウザーの互換性
---------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

関連情報
----

* `If-Range`
* `Range`
* `Content-Range`
* `Content-Type`
403 Forbidden
=============

HTTP の **`403 Forbidden`** クライアントエラーレスポンスコードは、サーバーがリクエストを理解したものの、認可が拒否されたことを示します。

このステータスは `401` に似ていますが、この場合は再認証しても結果は変わりません。アクセスは恒久的に禁止されており、リソースにアクセスする権限が不足しているなど、アプリケーションのロジックに結びついたものです。

ステータス
-----
```

403 Forbidden
```

レスポンスの例
-------
```

HTTP/1.1 403 Forbidden
Date: Wed, 21 Oct 2015 07:28:00 GMT
```

仕様書
---

| 仕様書 | 題名 |
| --- | --- |
| RFC 7231, セクション 6.5.3: 403 Forbidden | HTTP/1.1: Semantics and Content |

ブラウザーの互換性
---------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

関連情報
----

* `401`
* HTTP/1.1: Status Code Definitions
304 Not Modified
================

HTTP **`304 Not Modified`** クライアントリダイレクトレスポンスコードは、リクエストされたリソースを再送する必要がないことを示します。これはキャッシュされたリソースへの暗黙のリダイレクトです。これは、`GET` や `HEAD` リクエストのようなリクエストメソッドが safe である場合、またはリクエストが条件付きで `If-None-Match` もしくは `If-Modified-Since` ヘッダーを使用しているときに発生します。

`200` `OK` と同等のレスポンスは `Cache-Control`、`Content-Location`、`Date`、`ETag`、`Expires` および `Vary` ヘッダーを含みます。

**メモ:** 多くのブラウザーの開発ツールのネットワークパネルは `304` レスポンスにつながる追加のリクエストを作成するため、開発者はローカルキャッシュへのアクセスを見ることができます。

ステータス
-----
```

304 Not Modified
```

仕様
--

| 仕様書 | タイトル |
| --- | --- |
| RFC 7232, セクション 4.1: 304 Not Modified | Hypertext Transfer Protocol (HTTP/1.1): Conditional Requests |

ブラウザーの互換性
---------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

互換性メモ
-----

* このレスポンスが永続的な接続上で誤って本文を含むと、ブラウザーの動作が異なります。詳細については 204 No Content を参照してください。
関連情報
----

* `If-Modified-Since`
* `If-None-Match`
202 Accepted
============

HTTP (HyperText Transfer Protocol) の **`202 Accepted`** レスポンスステータスコードは、リクエストを受け取ったが、処理が完了していないことを表します。実際には、処理はまだ始まっていない可能性もあります。そのリクエストは、実際に処理が行われたときに拒否される可能性があるため、最終的に処理されるかどうかはわかりません。処理が実際に行われたときに許可されないかもしれないからです。

202 はコミットするものではありません。つまり、 HTTP にはリクエストの処理結果を示す非同期レスポンスを後で送信する方法がありません。別のプロセスやサーバーがリクエストを処理する場合や、バッチ処理のためのものです。

ステータス
-----
```

202 Accepted
```

仕様書
---

| 仕様書 | 題名 |
| --- | --- |
| RFC 7231, セクション 6.3.3: 202 Accepted | Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content |

関連情報
----

* `Accept`
505 HTTP Version Not Supported
==============================

HyperText Transfer Protocol (HTTP) **`505 HTTP Version Not Supported`** レスポンスステータスコードは、リクエストで使用されている HTTP バージョンがサーバーによってサポートされていないことを示します。

ステータス
-----
```

505 HTTP Version Not Supported
```

仕様
--

| 仕様書 | タイトル |
| --- | --- |
| RFC 7231, セクション 6.6.6: 505 HTTP Version Not Supported | Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content |

関連情報
----

* `Upgrade`
301 Moved Permanently
=====================

The HyperText Transfer Protocol (HTTP) の **`301 Moved Permanently`** リダイレクトステータスコードは、リクエストされたリソースが `Location` ヘッダーで示された URL へ完全に移動したことを示します。ブラウザーはこのページにリダイレクトし、検索エンジンはリソースへのリンクを更新します (「SEO 用語」では、「リンクジュース」が新しい URL に送られたと言われます)。

リダイレクトが行われるとき、仕様書ではメソッド (と本文) を変更しないよう要求していますが、すべてのユーザーエージェントが従っている訳ではありません。 - まだこの種のバグが発生するソフトウェアが見つかるでしょう。従って、 `301` のコードは `GET` または `HEAD` メソッドのみに使用し、このステータスでは明確にメソッドの変更が禁止されているので、 `POST` メソッドでは代わりに `308 Permanent Redirect` を使用することが推奨されています。

ステータス
-----
```

301 Moved Permanently
```

例
-

### クライアントリクエスト
```

GET /index.php HTTP/1.1
Host: www.example.org
```

### サーバーレスポンス
```

HTTP/1.1 301 Moved Permanently
Location: http://www.example.org/index.asp
```

仕様書
---

| 仕様書 | 題名 |
| --- | --- |
| RFC 7231, セクション 6.4.2: 301 Moved Permanently | Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content |

ブラウザーの互換性
---------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

関連情報
----

* `308 Permanent Redirect`
* `302 Found`: 一時リダイレクト
406 Not Acceptable
==================

HyperText Transfer Protocol (HTTP) の **`406 Not Acceptable`** クライアントエラーレスポンスコードは、サーバーがリクエストの用意したコンテンツネゴシエーションヘッダーで定義された受付可能な値に一致するレスポンスを生成できず、サーバーが既定の表現方法で提供することを望まないことを表します。

用意されるコンテンツネゴシエーションヘッダーには次のものがあります。

* `Accept`
* `Accept-Charset`
* `Accept-Encoding`
* `Accept-Language`

実際には、このエラーは滅多に使われません。このエラーコードが使用される代わりに、エンドユーザーには暗号的で修正するのが困難なものなので、サーバーは関連するヘッダーを無視してユーザーに実際のページを提供します。ユーザーが完全に利益にならない場合に限り、こちらのエラーコードを選択するでしょう。

サーバーがこのようなエラー状態を返してきた場合、メッセージの本文には利用できるリソースの表現の一覧を含み、ユーザーがその中から選択できるようにします。

ステータス
-----
```

406 Not Acceptable
```

仕様書
---

| 仕様書 | 題名 |
| --- | --- |
| RFC 7231, セクション 6.5.6: 406 Not Acceptable | Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content |

ブラウザーの対応
--------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

以下の情報は MDN の Github (https://github.com/mdn/browser-compat-data) から取得したものです。

関連情報
----

* `Accept`
* `Accept-Charset`
* `Accept-Encoding`
* `Accept-Language`
* HTTP のコンテンツネゴシエーション
500 Internal Server Error
=========================

HyperText Transfer Protocol (HTTP) の **`500 Internal Server Error`** サーバーエラーレスポンスコードは、サーバーがリクエストを実行を妨げる予期しない条件に遭遇したことを示します。

このエラーレスポンスは一般的な "catch-all" レスポンスです。普通、これはサーバーがレスポンスに対してより適切な 5xx のエラーコードを見つけることができなかったことを示します。サーバーの管理者は、ステータスコード 500 のようなエラーレスポンスをリクエストに関する詳細情報と共に記録し、将来同じエラーが発生することを防ぐ場合もあります。

ステータス
-----
```

500 Internal Server Error
```

仕様書
---

| 仕様書 | 題名 |
| --- | --- |
| RFC 7231, セクション 6.6.1: 500 Internal Server Error | Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content |

ブラウザーの互換性
---------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

以下に示す情報は、 MDN の GitHub から取得したものです。 (https://github.com/mdn/browser-compat-data).

関連情報
----

* HTTP/1.1: Status Code Definitions
207 Multi-Status
================

**メモ:** *リソースのコレクション* を返す機能は WebDAV プロトコルの一部です。(WebDAV サーバーにアクセスしているウェブアプリケーションが受信する可能性があります) ウェブページにアクセスしているブラウザーがこのステータスコードを受け取ることは無いでしょう。

HTTP **`207 Multi-Status`** レスポンスコードは、レスポンスが混ざっている可能性があることを示します。

レスポンスボディは `multistatus` ルート要素を持つ `text/xml` または `application/xml` の HTTP エンティティです。XML ボディですべての個別のレスポンスコードが列挙されます。

ステータス
-----
```

207 Multi-Status
```

例
-


```http
HTTP/1.1 207 Multi-Status
Content-Type: application/xml; charset="utf-8"
Content-Length: 1241

<?xml version="1.0" encoding="utf-8" ?>
<D:multistatus xmlns:D="DAV:">
  <D:response>
    <D:href>http://www.example.com/Coll/</D:href>
    <D:propstat>
      <D:prop>
        <D:displayname>Loop Demo</D:displayname>
        <D:resource-id>
          <D:href>urn:uuid:f81d4fae-7dec-11d0-a765-00a0c91e6bf8</D:href>
        </D:resource-id>
      </D:prop>
      <D:status>HTTP/1.1 200 OK</D:status>
    </D:propstat>
  </D:response>
  <D:response>
    <D:href>http://www.example.com/Coll/Bar</D:href>
    <D:propstat>
      <D:prop>
        <D:displayname>Loop Demo</D:displayname>
        <D:resource-id>
          <D:href>urn:uuid:f81d4fae-7dec-11d0-a765-00a0c91e6bf8</D:href>
        </D:resource-id>
      </D:prop>
      <D:status>HTTP/1.1 208 Already Reported</D:status>
    </D:propstat>
  </D:response>
</D:multistatus>
```

仕様書
---

| Specification |
| --- |
| RFC 4918 # section-11.1 |

関連情報
----

* HTTP リクエストメソッド
* `204`
* `403`
402 Payment Required
====================

**Experimental:** **これは実験的な機能です。**  
本番で使用する前にブラウザー互換性一覧表をチェックしてください。

HTTP の **`402 Payment Required`** は、将来使用するために予約されている標準外のクライアントエラーステータスレスポンスコードです。

このコードは、クライアントが支払いをするまでリクエストを処理できないことを示している場合があります。もともとは電子マネーまたは (マイクロ) ペイメントシステムを有効にするために作成されたもので、リクエストされたコンテンツがクライアントが支払いをするまで利用できないことを示していました。しかしながら、標準的な慣例は存在せず、様々なエンティティが様々な場面で使用しています。

ステータス
-----
```

402 Payment Required
```

レスポンスの例
-------


```bash
HTTP/1.1 402 Payment Required
Date: Wed, 21 Oct 2015 07:28:00 GMT
```

仕様書
---

| 仕様書 | 題名 |
| --- | --- |
| RFC 7231, セクション 6.5.2: 402 Payment Required | HTTP/1.1: Semantics and Content |

ブラウザーの互換性
---------

{{Compat}}関連情報
----

* HTTP authentication
203 Non-Authoritative Information
=================================

HTTP の **`203 Non-Authoritative Information`** レスポンスステータスは、リクエストが成功したものの、変換プロキシによって元のサーバーの`200` (`OK`) レスポンスからペイロードが変更されたことを表します。

`203` レスポンスは `214` の値、すなわち `Transformation Applied` の `Warning` ヘッダーコードと似ていますが、こちらはどのステータスコードのレスポンスにも適用できるという利点があります。

ステータス
-----
```

203 Non-Authoritative Information
```

仕様書
---

| 仕様書 | 題名 |
| --- | --- |
| RFC 7231, セクション 6.3.4: 203 Non-Authoritative Information | Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content |

関連情報
----

* `200`
* Proxy server
* `Warning`
451 Unavailable For Legal Reasons
=================================

HyperText Transfer Protocol (HTTP) の **`451 Unavailable For Legal Reasons`** はユーザーの要求したリソースが法的理由で使用できない場合のクライアントエラーのレスポンスコードです。

ステータス
-----
```

451 Unavailable For Legal Reasons
```

例
-

このレスポンス例は IETF RFC 文書 (リンクは後述) にあるもので、モンティ・パイソンのライフ・オブ・ブライアンからの引用を例に用いています。

**注:** ISP や DNS サーバーなど、実際にユーザーによるリソースの使用を阻んでいる主体を示すときには `rel="blocked-by"` という値のついた `Link` HTTP ヘッダーを使用します。

リソースの使用を阻んでいる最終的な原因は、`rel="blocked-by"` の `Link`HTTP ヘッダーではなくレスポンスの本体に記載されます。これは内容の削除を求める法的な請求を行った個人や組織などが含まれます。
```

HTTP/1.1 451 Unavailable For Legal Reasons
Link: <https://spqr.example.org/legislatione>; rel="blocked-by"
Content-Type: text/html
```


```
<html>
      <head><title>Unavailable For Legal Reasons</title></head>
      <body>
            <h1>Unavailable For Legal Reasons</h1>
            <p>This request may not be serviced in the Roman Province
            of Judea due to the Lex Julia Majestatis, which disallows
            access to resources hosted on servers deemed to be
            operated by the People's Front of Judea.</p>
     </body>
</html>
```

仕様書
---

| 仕様書 | 題名 |
| --- | --- |
| RFC 7725: 451 Unavailable For Legal Reasons | An HTTP Status Code to Report Legal Obstacles |

ブラウザーの互換性
---------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

以下に示す情報は、 MDN の GitHub から取得したものです。 (https://github.com/mdn/browser-compat-data).

関連情報
----

* ウィキペディア上の HTTP 451 の記事
* ウィキペディア上の 華氏451度 の記事 (このステータスコードの由来)
504 Gateway Timeout
===================

HyperText Transfer Protocol (HTTP) **`504 Gateway Timeout`** サーバーエラーレスポンスコードは、サーバーがゲートウェイまたはプロキシとして機能しているときに、リクエストを完了するために必要な上流のサーバーからのレスポンスが時間内に得られなかったことを示します。

**メモ:** ゲートウェイはネットワーク内の様々なものを指す可能性があり、 504 エラーはふつう、自分で修正できるものではありませんが、アクセスしようとしているウェブサーバーやプロキシで修正する必要があります。

ステータス
-----
```

504 Gateway Timeout
```

仕様書
---

| 仕様書 | 題名 |
| --- | --- |
| RFC 7231, セクション 6.6.5: 504 Gateway Timeout | Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content |

ブラウザーの互換性
---------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

以下に示す情報は、 MDN の GitHub から取得したものです。 (https://github.com/mdn/browser-compat-data).

関連情報
----

* HTTP/1.1: Status Code Definitions
* `502`
508 Loop Detected
=================

The HyperText Transfer Protocol (HTTP) の **`508 Loop Detected`** レスポンスステータスコードは、 Web Distributed Authoring and Versioning (WebDAV) プロトコルの文脈で発生する可能性があります。

これは "Depth: infinity" がついたリクエストを処理する際に無限ループに陥ったために、サーバーが操作を終了させたことを示します。このステータスは操作全体が失敗したことを示します。

ステータス
-----
```

508 Loop Detected
```

仕様書
---

| 仕様書 | 題名 |
| --- | --- |
| RFC 5842, セクション 7.2: 508 Loop Detected | Web Distributed Authoring and Versioning |
416 Range Not Satisfiable
=========================

HyperText Transfer Protocol (HTTP) **`416 Range Not Satisfiable`** エラーレスポンスコードは、サーバーがリクエストされた範囲を提供できないことを示します。最も可能性の高い理由は、文書にそのような範囲が含まれていないか、または `Range` ヘッダー値が構文的には正しいものの、意味をなさないということです。

`416` レスポンスメッセージには `Content-Range` が含まれ、未解決の範囲 (`'*'`) とそれに続く `'/'` とリソースの現在、例えば `Content-Range: bytes */12777` を示します。

このエラーに直面すると、ブラウザーは通常操作を中断する (たとえば、ダウンロードは再開不可とみなす) か、文書全体を再度リクエストするかします。

ステータス
-----
```

416 Range Not Satisfiable
```

仕様書
---

| 仕様書 | 題名 |
| --- | --- |
| RFC 7233, セクション 4.4: 416 Request Not Satisfiable | Hypertext Transfer Protocol (HTTP/1.1): Range Requests |

ブラウザーの互換性
---------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

以下に表示される情報は、MDN の Github (https://github.com/mdn/browser-compat-data) からのものです。

関連情報
----

* `206` `Partial Content`
* `Content-Range`
* `Range`
101 Switching Protocols
=======================

HTTP の **`101 Switching Protocols`** レスポンスコードは、 `Upgrade` リクエストヘッダーを含むメッセージが送られたクライアントが要求する際に、サーバーが切り替えようとしているプロトコルを示します。

サーバーはこのレスポンスに `Upgrade` レスポンスヘッダーを含めて、切り替え先のプロトコルを示します。手順はプロトコル更新メカニズム (en-US)の記事で詳細に説明しています。

状態
--
```

101 Switching Protocols
```

例
-

切り替えるプロトコルで WebSockets が使用される場合です。
```

HTTP/1.1 101 Switching Protocols
Upgrade: websocket
Connection: Upgrade
```

仕様書
---

| 仕様書 | 題名 |
| --- | --- |
| RFC 7231, セクション 6.2.2: 101 Switching Protocol | Hypertext Transfer Protocol (HTTP/1.1):セマンティクスとコンテンツ |

関連情報
----

* プロトコル更新メカニズム (en-US)
* WebSocket
* `Upgrade`
* `426` `Upgrade Required`
226 IM Used
===========

**メモ:** ブラウザーは HTTP で *デルタエンコーディング* に対応していません。このステータスコードは特定のクライアントで用いられるカスタムされたサーバーから送り返されます。

デルタエンコーディングの文脈において、HTTP **`226 IM Used`** ステータスコードは受信した `GET` リクエストに対する *デルタ* を返していることを示すためにサーバーによって設定されます。

デルタエンコーディングでは、サーバーは `GET` リクエストに対して (現在のドキュメントではなく) 指定のベースドキュメントからの (*デルタ* と呼ばれる) 違いで応答します。クライアントは `A-IM:` HTTP ヘッダーにより使用する差分アルゴリズムを示し、`If-None-Match:` ヘッダーで取得した最新バージョンに関するヒントをサーバーに与えます。サーバーはデルタを生成し、ステータスコードが `226` で、(使用したアルゴリズムの名前を伴う) `IM:` HTTP ヘッダーおよび (デルタに紐づくベースドキュメントに対応する `ETag` を伴う) `Delta-Base:` HTTP ヘッダーが含まれる HTTP レスポンスで返します。

IM は *instance manipulations* を表します。これは *デルタ* の生成アルゴリズムを記述する際に用いられる用語です。

ステータス
-----
```

226 IM Used
```

仕様書
---

| Specification |
| --- |
| Unknown specification # section-10.4.1 |
510 Not Extended
================

HyperText Transfer Protocol (HTTP) の **`510 Not Extended`** レスポンスステータスコードは、RFC 2774 が定義する HTTP 拡張フレームワークのコンテキストで送信されます。

その仕様では、クライアントは、使用する拡張を記述する拡張宣言を含むリクエストを送信できます。 サーバーがそのようなリクエストを受信しても、記述されている拡張をそのリクエストに対してサポートしていない場合、サーバーは 510 ステータスコードで応答します。

ステータス
-----
```

510 Not Extended
```

仕様
--

| 仕様 | タイトル |
| --- | --- |
| RFC 2774, セクション 7: 510 Not Extended | An HTTP Extension Framework |
412 Precondition Failed
=======================

HyperText Transfer Protocol (HTTP) **`412 Precondition Failed`** クライアントエラーレスポンスコードは、ターゲットリソースへのアクセスが拒否されたことを示します。これは、 `If-Unmodified-Since` または `If-None-Match` ヘッダーで定義された条件が満たされていない場合に、 `GET` もしくは `HEAD` 以外のメソッドの条件付きリクエストで発生します。その場合、リクエスト (通常はリソースのアップロードまたは変更) を行うことができず、このエラーレスポンスが返されます。

ステータス
-----
```

412 Precondition Failed
```

例
-
```

ETag: "33a64df551425fcc55e4d42a148795d9f25f89d4"
ETag: W/"0815"
```

### 空中衝突の防止

`ETag` と `If-Match` の各ヘッダーを活用することで、編集の空中衝突を検出することができます。

例えば、 MDN を編集しているとき、現在の Wiki の内容がハッシュ化され、レスポンスの `Etag` に入ります。
```

ETag: "33a64df551425fcc55e4d42a148795d9f25f89d4"
```


Wiki ページへの編集を保存する (データを投稿する) 際に、 `POST` リクエストに `If-Match` ヘッダーを含み、その中で新鮮さをチェックするための `ETag` の値を含みます。
```

If-Match: "33a64df551425fcc55e4d42a148795d9f25f89d4"
```


ハッシュが一致しない場合、その間で文書が編集されたことを意味するので、 `412` `Precondition Failed` エラーを発生させます。

仕様書
---

| 仕様書 | 題名 |
| --- | --- |
| RFC 7232, セクション 4.2: 412 Precondition Failed | Hypertext Transfer Protocol (HTTP/1.1): Conditional Requests |

ブラウザーの互換性
---------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

以下に示す情報は、 MDN の GitHub から取得したものです。 (https://github.com/mdn/browser-compat-data).

関連情報
----

* `304`
* `If-Unmodified-Since`
* `If-None-Match`
* `428`
423 Locked
==========

**メモ:** リソースを *ロック* する機能は、WebDAV サーバーの一部に固有のものです。ウェブページにアクセスしているブラウザーがこのステータスコードを受け取ることは無いはずです。これを受け取る間違った状況では、ブラウザーはこれを一般の `400` ステータスコードとして扱うでしょう。

HTTP **`423 Locked`** エラーレスポンスコードは、対象のリソースが *ロックされている*、すなわちアクセスできないことを示します。コンテンツは、WebDAV の XML 形式で情報を含むべきです。

ステータス
-----
```

423 Locked
```

### 例


```http
HTTP/1.1 423 Locked
Content-Type: application/xml; charset="utf-8"
Content-Length: xxxx

<?xml version="1.0" encoding="utf-8" ?>
<D:error xmlns:D="DAV:">
  <D:lock-token-submitted>
    <D:href>/workspace/webdav/</D:href>
  </D:lock-token-submitted>
</D:error>
```

仕様書
---

| Specification |
| --- |
| RFC 4918 # section-11.3 |
303 See Other
=============

HyperText Transfer Protocol (HTTP) の **`303 See Other`** リダイレクトステータスレスポンスコードは、リダイレクトが新しくアップロードされたリソースではなく、 (確認ページやアップロード進捗ページのような) 別なページにリンクすることを示します。このレスポンスコードはふつう、 `PUT` または `POST` の結果として送り返されます。このリダイレクトページを表示するためには、常に `GET` を使用してください。

ステータス
-----
```

303 See Other
```

仕様書
---

| 仕様書 | 題名 |
| --- | --- |
| RFC 7231, セクション 6.4.4: 303 See Other | Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content |

ブラウザーの互換性
---------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

関連情報
----

* `302 Found` 一時的なリダイレクト
* `307 Temporary Redirect` 使用されたメソッドが変更されない場面でこのステータスコードと等価。
404 Not Found
=============

 HTTP の **`404 Not Found`** レスポンスステータスコードは、サーバーがリクエストされたリソースを見つけることができないことを示します。
 404 ページにつながるリンクは、壊れたリンクまたは死んだリンクと呼ばれ、リンク切れの対象となることがあります。

 404 ステータスコードは、そのリソースが見つからないことを示すだけです。リソースが一時的または永続的に失われているかどうかを示してはいません。
 リソースが永久に削除された場合は、代わりに `410` (Gone) を使用してください。

ステータス
-----
```

404 Not Found
```

独自のエラーページ
---------

独自の 404 ページを表示して、ユーザーにとってより有益な、次に何をすべきかのガイダンスを提供することができます。例えば、 Apache サーバーの場合、 `.htaccess` ファイルで独自の 404 ページへのパスを指定することができます。
```

ErrorDocument 404 /notfound.html
```


独自の 404 ページの例については、この 404 ページを参照してください。

**メモ:** 適度なデザインのカスタマイズは良いことです。あなたの 404 ページをユーモアや思いやりのあるものにすることは自由ですが、ユーザーを混乱させないようにしてください。

仕様書
---

| Specification |
| --- |
| HTTP Semantics # status.404 |

ブラウザーの互換性
---------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

関連情報
----

* `410`
* Wikipedia: HTTP 404
502 Bad Gateway
===============

HyperText Transfer Protocol (HTTP) の **`502 Bad Gateway`** サーバーエラーレスポンスコードは、ゲートウェイまたはプロキシとして機能しているサーバーが上流のサーバーから無効なレスポンスを受け取ったことを示しています。

**メモ:** ゲートウェイはネットワークの様々なものを指す可能性があり、 502 エラーは通常修正できるものではありませんが、ウェブサーバーまたはアクセスを中継させようとしているプロキシによる修正が必要です。

ステータス
-----
```

502 Bad Gateway
```

仕様書
---

| 仕様書 | 題名 |
| --- | --- |
| RFC 7231, セクション 6.6.3: 502 Bad Gateway | Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content |

ブラウザーの互換性
---------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

以下に示す情報は、 MDN の GitHub から取得したものです。 (https://github.com/mdn/browser-compat-data).

関連情報
----

* `504`
* HTTP/1.1: Status Code Definitions
205 Reset Content
=================

HTTP **`205 Reset Content`** のレスポンスステータスはクライアントにドキュメントビューをリセットするように指示します。たとえば、フォームの内容をクリアしたり、キャンバスの状態をリセットしたり、UI をリフレッシュすることができます。

ステータス
-----
```

205 Reset Content
```

仕様
--

| 仕様書 | タイトル |
| --- | --- |
| RFC 7231, セクション 6.3.6: 205 Reset Content | Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content |

互換性メモ
-----

* このレスポンスが永続的な接続上で誤って本文を含むと、ブラウザーの動作が異なります。詳細については 204 No Content を参照してください。
関連情報
----

* `204` No Content