HTTP レスポンスステータスコードは、特定の HTTP リクエストが正常に完了したかを示します。レスポンスは情報レスポンス、成功レスポンス、リダイレクト、クライアントエラー、サーバーエラーの 5 つのクラスに分類されます。ステータスコードはRFC 2616 の第10章で定義されています。
情報レスポンス
100 Continue
- この暫定レスポンスは、その時点までのすべてに問題がなくクライアントはリクエストを継続してよい、またもしリクエストが完了している場合は無視してよいことを示します。
101 Switching Protocol
- このコードはクライアントの
Upgrade
リクエストヘッダーの応答として送信され、サーバーはプロトコルを切り替えていることを示します。 102 Processing
(WebDAV)- このコードは、サーバーはリクエストを受け取って処理しているが、まだレスポンスを提供できないことを示します。
成功レスポンス
200 OK
- リクエストが成功したことを示します。成功が意味することは、 HTTP メソッドにより異なります:
GET: リソースが取り出され、メッセージ本文で転送されます。
HEAD: エンティティヘッダーがメッセージ本文内にあります。
PUT 又は POST: アクションの結果を表すリソースがメッセージ本文で転送されます。
TRACE: サーバーが受理したリクエストメッセージがメッセージ本文に含まれています。 201 Created
- リクエストは成功し、その結果新たなリソースが作成されたことを示します。これは一般的に、 POST リクエストや、一部の PUT リクエストを送信した後のレスポンスになります。
202 Accepted
- リクエストは受理されたが、まだ実行されていないことを示します。これはあいまいであり、なぜなら HTTP ではリクエストを処理した結果を示す非同期なレスポンスを後から送信する方法がないためです。リクエストは別のプロセスかサーバーが処理する、またはバッチ処理する予定です。
203 Non-Authoritative Information
- このレスポンスコードは、返されるメタ情報のセットが生成元のサーバーから得られるセットと同一ではなく、ローカルまたは第三者の持つ複製から収集したことを表します。このような状態を除いて、 200 OK がこれより好ましいレスポンスです。
204 No Content
- リクエストに対して送信するコンテンツはありませんが、ヘッダーは有用であることを示します。ユーザーエージェントはこのリソースに関するキャッシュ済みのヘッダーを、新たな内容に更新します。
205 Reset Content
- このレスポンスコードはリクエストの完了後に送信され、ユーザーエージェントに対し、リクエストを送信した文書の表示をリセットするよう伝達します。
206 Partial Content
- このレスポンスコードは、クライアントがダウンロードを複数のストリームに分けるために Range ヘッダーを送信したことを理由として使用します。
207 Multi-Status
(WebDAV)- Multi-Status レスポンスは、複数のステータスコードがあてはまる状況で、複数のリソースに関する情報を伝えます。
208 Multi-Status
(WebDAV)- 同じコレクションに繰り返し複数のバインディングする内部メンバーを列挙することを避けるため、 DAV: propstat レスポンスエレメントの内部で使用します。
226 IM Used
(HTTP Delta encoding)- サーバーはリソースへの GET リクエストの処理を完了しており、レスポンスは現在のインスタンスに適用された 1 つ以上の instance manipulation の結果を表します。
リダイレクションメッセージ
300 Multiple Choice
- リクエストに対して複数のレスポンスがあることを示します。ユーザーエージェントやユーザーは、それらからひとつを選択します。複数のレスポンスからひとつを選ぶ方法は標準化されていません。
301 Moved Permanently
- このレスポンスコードは、リクエストされたリソースの URI が変更されたことを示します。おそらく、新しい URI がレスポンス内で与えられるでしょう。
302 Found
- このレスポンスコードは、リクエストされたリソースの URI が一時的に変更されたことを示します。URI は将来、新たに変更される可能性があります。従って、クライアントは将来のリクエストでも同じ URI を使用するべきです。
303 See Other
- サーバーはこのレスポンスを、リクエストされたリソースを別の URI で GET リクエストを使用して取得するようクライアントを誘導するために送信します。
304 Not Modified
- これはキャッシュ用に使用します。このレスポンスコードはクライアントに対して、レスポンスは変更されていないことを示します。よって、クライアントはキャッシュ済みのレスポンスを使い続けます。
305 Use Proxy
- これは旧バージョンの HTTP 仕様書で、要求されたレスポンスはプロキシからアクセスしなければならないことを示していました。プロキシのインバンド設定に関するセキュリティの懸念により、このレスポンスコードは非推奨になりました。
306 unused
- このレスポンスコードは使用されす、現在は予約済みです。 HTTP 1.1 仕様の旧バージョンでは使用されていました。
307 Temporary Redirect
- サーバーはこのレスポンスを、リクエストされたリソースを別の URI で、元のリクエストと同じメソッドを使用して取得するようクライアントを誘導するために送信します。これは
302 Found
HTTP レスポンスコードと同じ意味を持ちますが、ユーザーエージェントは使用する HTTP メソッドを変更してはならない点が異なります。始めのリクエストでPOST
を用いた場合は、次のリクエストでもPOST
を使用しなければなりません。 308 Permanent Redirect
- これは、リソースが
Location:
HTTP レスポンスヘッダーで指定した別の URI へ永続的に置かれていることを示します。これは301 Moved Permanently
HTTP レスポンスコードと同じ意味を持ちますが、ユーザーエージェントは使用する HTTP メソッドを変更してはならない点が異なります。始めのリクエストでPOST
を用いた場合は、次のリクエストでもPOST
を使用しなければなりません。
クライアントエラーレスポンス
400 Bad Request
- このレスポンスは、構文が無効であるためサーバーがリクエストを理解できないことを示します。
401 Unauthorized
- HTTP 標準では "unauthorized" (不許可) と定義されていますが、意味的にはこのレスポンスは "unauthenticated" (未認証) です。つまり、クライアントはリクエストレスポンスを得るためには認証されなければなりません。
402 Payment Required
- このレスポンスコードは、将来のために予約されています。このコードを作成した当初の目的はデジタル支払システムの使用でしたが、現時点では使用されていません。
403 Forbidden
- 認証されていないなどの理由でクライアントにコンテンツのアクセス権がなく、サーバーが適切なレスポンスの返信を拒否していることを示します。 401 とは異なり、クライアントの識別子がサーバーに知られています。
404 Not Found
- サーバーがリクエストされたリソースを発見できないことを示します。ブラウザーでは、これは URL が解釈できなかったことを意味します。 API では、これは通信先が有効であるものの、リソース自体が存在しないことを意味することがあります。サーバーは認証されていないクライアントからリソースの存在を隠すために、 403 の代わりにこのレスポンスを返すことがあります。このレスポンスコードはウェブで頻繁に見られるため、おそらくもっとも有名なコードでしょう。
405 Method Not Allowed
- The request method is known by the server but has been disabled and cannot be used. For example, an API may forbid DELETE-ing a resource. The two mandatory methods,
GET
andHEAD
, must never be disabled and should not return this error code. 406 Not Acceptable
- このレスポンスは、ウェブサーバーが サーバー駆動型コンテンツネゴシエーション を行った結果、ユーザーエージェントから与えられた条件に合うコンテンツが見つからない場合に送信されます。
407 Proxy Authentication Required
- これは 401 に似ていますが、プロキシサーバーが認証を要求している点が異なります。
408 Request Timeout
- このレスポンスはクライアントが以前にリクエストを行っていない、アイドル状態のコネクションにおいて一部のサーバーが送信します。サーバーは使用していないコネクションの終了を望むことを示します。このレスポンスは Chrome、Firefox 27 以降、IE9 など、閲覧を高速化するための HTTP 事前接続機能を使用する一部のブラウザでよく使用します。また、一部のサーバーはこのメッセージを送らずにコネクションを閉じることに注意してください。
409 Conflict
- このレスポンスは、リクエストがサーバーの現在の状態と矛盾する場合に送られるでしょう。
410 Gone
- このレスポンスは、リクエストされたコンテンツがサーバーから永久に削除され、転送先アドレスがない場合に送られます。クライアントはこのリソースへのキャッシュやリンクを削除することが期待されます。 HTTP 仕様書ではこのコードを「期間限定のプロモーションサービス」に使用することを意図しています。 API はこのステータスコードの場合、削除されたリソースを無理に示そうとするべきではありません。
411 Length Required
- サーバーは
Content-Length
ヘッダー項目を要求するがリクエストで定義されていないために、サーバーがリクエストを拒否したことを示します。 412 Precondition Failed
- サーバー側で適合しない前提条件が、クライアント側のヘッダーに含まれていることを示します。
413 Payload Too Large
- リクエストの本体がサーバーで定めている上限を超えていることを示します。サーバーはコネクションを閉じるか、
Retry-After
ヘッダー項目を返します。 414 URI Too Long
- クライアントがリクエストした URI が、サーバーで扱える長さを超えていることを示します。
415 Unsupported Media Type
- リクエストされたデータのメディア形式をサーバーが対応しておらず、サーバーはリクエストを拒否したことを示します。
416 Requested Range Not Satisfiable
- リクエスト内の
Range
ヘッダー項目で指定された範囲を満たすことができないことを示します。指定した範囲が、目的の URI のデータサイズを超えている可能性があります。 417 Expectation Failed
- このレスポンスコードは、
Expect
リクエストヘッダーで指定された内容がサーバー側と適合しないことを示します。 418 I'm a teapot
- サーバーは、ティーポットでコーヒーを淹れようとする試みを拒否します。
421 Misdirected Request
- リクエストは、レスポンスを生成できないサーバーに送られました。リクエストの URI に含まれているスキームや権限の組み合わせに対してレスポンスを生成するよう設定されていないサーバーが、このコードを送ることがあります。
422 Unprocessable Entity
(WebDAV)- リクエストは適正ですが、意味が誤っているために従うことができません。
423 Locked
(WebDAV)- アクセス中のリソースはロックされています。
424 Failed Dependency
(WebDAV)- 前のリクエストが失敗したため、このリクエストも失敗しました。
426 Upgrade Required
- サーバーは現在のプロトコルを使用したリクエストの実行を拒否しましたが、クライアントが別のプロトコルにアップグレードした後は受け入れることができます。サーバーは要求するプロトコルを示すために、426 のレスポンスで
Upgrade
ヘッダー項目を送信しなければなりません。 428 Precondition Required
- オリジンサーバーはリクエストが条件付きになることを必要としています。これは "ロストアップデート問題" (クライアントがリソースの状態を取得して変更およびサーバーに送信している間に、第三者がサーバーの状態を変更して競合が発生すること) を防ごうとするものです。
429 Too Many Requests
- ユーザーは一定の時間内に大量のリクエストを送信しました ("レート制限")。
431 Request Header Fields Too Large
- ヘッダー項目が大きすぎるため、サーバーはリクエストの処理を望みません。ヘッダー項目のサイズを削減した後に、リクエストを再送信できます。
451 Unavailable For Legal Reasons
- 政府によって検閲されたウェブページなど、ユーザーは違法なリソースを要求しています。
サーバーエラーレスポンス
500 Internal Server Error
- サーバー側で処理方法がわからない事態が発生したことを示します。
501 Not Implemented
- リクエストメソッドをサーバーが対応しておらず、扱えないことを示します。サーバーが対応しなければならない (従って、このコードを返してはならない) メソッドは
GET
とHEAD
だけです。 502 Bad Gateway
- このエラーレスポンスは、リクエストの処理に必要なレスポンスを受け取るゲートウェイとして動作するサーバーが無効なレスポンスを受け取ったことを示します。
503 Service Unavailable
- サーバーはリクエストを処理する準備ができていないことを示します。一般的な原因は、サーバーがメンテナンスや過負荷でダウンしていることです。このレスポンスとともに問題について説明する、ユーザーにわかりやすいページを送信するべきであることに注意してください。このレスポンスは一時的な状況について使用するものであり、また可能であれば、サービスが復旧する前に
Retry-After:
HTTP ヘッダーに予定時刻を含めるべきです。また、これら一時的な状況のレスポンスは通常キャッシュされるべきではないことから、ウェブ管理者はこのレスポンスとともに送られるキャッシュ関連のヘッダーに注意しなければなりません。 504 Gateway Timeout
- このエラーレスポンスは、ゲートウェイとして動作するサーバーが時間内にレスポンスを得られない場合に送られます。
505 HTTP Version Not Supported
- リクエストで使用した HTTP のバージョンをサーバーが対応していないことを示します。
506 Variant Also Negotiates
- サーバー内部で設定エラーが発生しました。リクエストの透過的コンテンツネゴシエーションで循環参照が発生しました。
507 Insufficient Storage
- サーバー内部で設定エラーが発生しました。選択したバリアントリソースは透過的コンテンツネゴシエーション自体に携わるよう設定されており、ネゴシエーションプロセスが適切に終了しません。
508 Loop Detected
(WebDAV)- サーバーは、リクエストの処理中に無限ループを検出しました。
510 Not Extended
- サーバーがリクエストを処理するために、リクエストをさらに拡張することが必要です。
511 Network Authentication Required
- ステータスコード 511 は、クライアントがネットワークでアクセスするために認証が必要であることを示します。
ブラウザーの対応
このページの互換性一覧表は構造化データから生成されています。データに協力したいのであれば、 https://github.com/mdn/browser-compat-data をチェックアウトしてプルリクエストを送信してください。
機能 | Chrome | Edge | Firefox | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|---|
100 | あり | あり | あり | あり | あり | あり |
200 | あり | あり | あり | あり | あり | あり |
201 | あり | あり | あり | あり | あり | あり |
204 | あり | あり | あり | あり | あり | あり |
206 | あり | あり | あり | あり | あり | あり |
301 | あり | あり | あり | あり | あり | あり |
302 | あり | あり | あり | あり | あり | あり |
303 | あり | あり | あり | あり | あり | あり |
304 | あり | あり | あり | あり | あり | あり |
307 | あり | あり | あり | あり | あり | あり |
308 | あり | あり | あり | あり | あり | あり |
401 | あり | あり | あり | あり | あり | あり |
403 | あり | あり | あり | あり | あり | あり |
404 | あり | あり | あり | あり | あり | あり |
406 | あり | あり | あり | あり | あり | あり |
407 | あり | あり | あり | あり | あり | あり |
410 | あり | あり | あり | あり | あり | あり |
412 | あり | あり | あり | あり | あり | あり |
416 | あり | あり | あり | あり | あり | あり |
451 | あり | あり | あり | あり | あり | あり |
500 | あり | あり | あり | あり | あり | あり |
501 | あり | あり | あり | あり | あり | あり |
502 | あり | あり | あり | あり | あり | あり |
503 | あり | あり | あり | あり | あり | あり |
504 | あり | あり | あり | あり | あり | あり |
機能 | Android webview | Chrome for Android | Edge mobile | Firefox for Android | Opera Android | iOS Safari | Samsung Internet |
---|---|---|---|---|---|---|---|
100 | あり | あり | あり | あり | あり | あり | あり |
200 | あり | あり | あり | あり | あり | あり | あり |
201 | あり | あり | あり | あり | あり | あり | あり |
204 | あり | あり | あり | あり | あり | あり | あり |
206 | あり | あり | あり | あり | あり | あり | あり |
301 | あり | あり | あり | あり | あり | あり | あり |
302 | あり | あり | あり | あり | あり | あり | あり |
303 | あり | あり | あり | あり | あり | あり | あり |
304 | あり | あり | あり | あり | あり | あり | あり |
307 | あり | あり | あり | あり | あり | あり | あり |
308 | あり | あり | あり | あり | あり | あり | あり |
401 | あり | あり | あり | あり | あり | あり | あり |
403 | あり | あり | あり | あり | あり | あり | あり |
404 | あり | あり | あり | あり | あり | あり | あり |
406 | あり | あり | あり | あり | あり | あり | あり |
407 | あり | あり | あり | あり | あり | あり | あり |
410 | あり | あり | あり | あり | あり | あり | あり |
412 | あり | あり | あり | あり | あり | あり | あり |
416 | あり | あり | あり | あり | あり | あり | あり |
451 | あり | あり | あり | あり | あり | あり | あり |
500 | あり | あり | あり | あり | あり | あり | あり |
501 | あり | あり | あり | あり | あり | あり | あり |
502 | あり | あり | あり | あり | あり | あり | あり |
503 | あり | あり | あり | あり | あり | あり | あり |
504 | あり | あり | あり | あり | あり | あり | あり |