Please note, this is a STATIC archive of website developer.mozilla.org from 03 Nov 2016, cach3.com does not collect or store any user information, there is no "phishing" involved.

HTTP レスポンスコード

HTTP レスポンスコードは、特定の HTTP リクエストが正常に完了したかを示します。レスポンスは情報レスポンス、成功レスポンス、リダイレクション、クライアントエラー、サーバエラーの 5 つのクラスに分類されます。

以下の表でそれらすべてを、各々の意味とともに挙げます:

ステータスコード ステータステキスト 説明 HTTP バージョン
情報レスポンス
100 Continue この暫定レスポンスは、その時点までのすべてに問題がなくクライアントはリクエストを継続してよい、またもしリクエストが完了している場合は無視してよいことを示します。 HTTP/1.1 のみ
101 Switching Protocol このコードはクライアントの Upgrade: リクエストヘッダの応答として送信され、サーバはプロトコルを切り替えていることを示します。これは互換性のないプロトコルバージョンへの移行を可能にするために導入されましたが、あまり使用されていません。 HTTP/1.1 のみ
成功レスポンス
200

OK

リクエストが成功したことを示します。"成功" が意味することは、HTTP メソッドにより異なります:
  • GET: リソースが取り出され、メッセージボディで伝送されます。
  • HEAD: エンティティヘッダがメッセージボディ内にあります。
  • POST: アクションの結果を表すリソースがメッセージボディで伝送されます。
  • TRACE: サーバが受理したリクエストメッセージがメッセージボディに含まれています。
HTTP/0.9 以降
201 Created リクエストは成功し、その結果新たなリソースが作成されたことを示します。これは一般的に、PUT リクエストを送信した後のレスポンスになります。 HTTP/0.9 以降
202 Accepted リクエストは受理されたが、まだ実行されていないことを示します。これはあいまいであり、なぜなら HTTP ではリクエストを処理した結果を示す非同期なレスポンスを後から送信する方法がないためです。リクエストは別のプロセスかサーバが処理する、またはバッチ処理する予定です。 HTTP/0.9 以降
203 Non-Authoritative Information このレスポンスコードは、返されるメタ情報のセットが生成元のサーバから得られるセットと同一ではなく、ローカルまたは第三者の持つ複製から収集したことを表します。このような状態を除いて、200 OK が本レスポンスより好ましいレスポンスです。 HTTP/0.9 および 1.1
204 No Content リクエストに対して送信するコンテンツはありませんが、ヘッダは有用であることを示します。ユーザエージェントはこのリソースに関するキャッシュ済みのヘッダを、新たな内容に更新します。 HTTP/0.9 以降
205 Reset Content このレスポンスコードはリクエストの完了後に送信され、ユーザエージェントに対し、リクエストを送信したドキュメントの表示をリセットするよう伝達します。 HTTP/1.1 のみ
206 Partial Content このレスポンスコードは、クライアントがダウンロードを複数のストリームに分けるために Range: ヘッダを送信したことを理由として使用します。 HTTP/1.1 のみ
リダイレクションメッセージ
300 Multiple Choice リクエストに対して複数のレスポンスがあることを示します。ユーザエージェントやユーザは、それらからひとつを選択します。複数のレスポンスからひとつを選ぶ方法は標準化されていません。 HTTP/1.0 以降
301 Moved Permanently このレスポンスコードは、リクエストされたリソースの URI が変更されたことを示します。おそらく、新しい URI がレスポンス内で与えられるでしょう。 HTTP/0.9 以降
302 Found このレスポンスコードは、リクエストされたリソースの URI が一時的に変更されたことを示します。URI は将来、新たに変更される可能性があります。従って、クライアントは将来のリクエストでも同じ URI を使用するべきです。 HTTP/0.9 以降
303 See Other サーバはこのレスポンスを、リクエストされたリソースを別の URI で GET リクエストを使用して取得するようクライアントを誘導するために送信します。 HTTP/0.9 および 1.1
304 Not Modified これはキャッシュ用に使用します。このレスポンスコードはクライアントに対して、レスポンスは変更されていないことを示します。よって、クライアントはキャッシュ済みのレスポンスを使い続けます。 HTTP/0.9 以降
305 Use Proxy これは、リクエストされたリソースはプロキシサーバ経由でアクセスしなければならないことを示します。このレスポンスコードはセキュリティ上の理由から、あまりサポートされていません。 HTTP/1.1 のみ
306 unused このレスポンスコードは使用されす、現在は予約済みです。HTTP 1.1 仕様の旧バージョンでは使用されていました。 HTTP/1.1 のみ
307 Temporary Redirect サーバはこのレスポンスを、リクエストされたリソースを別の URI で、元のリクエストと同じメソッドを使用して取得するようクライアントを誘導するために送信します。これは 302 Found HTTP レスポンスコードと同じ意味を持ちますが、ユーザエージェントは使用する HTTP メソッドを変更してはならない点が異なります: 始めのリクエストで POST を用いた場合は、次のリクエストでも POST を使用しなければなりません。 HTTP/1.1 のみ
308 Permanent Redirect

これは、リソースが Location: HTTP レスポンスヘッダで指定した別の URI へ永続的に置かれていることを示します。これは 301 Moved Permanently HTTP レスポンスコードと同じ意味を持ちますが、ユーザエージェントは使用する HTTP メソッドを変更してはならない点が異なります: 始めのリクエストで POST を用いた場合は、次のリクエストでも POST を使用しなければなりません。

注記: これは仕様が草案段階である、実験的なレスポンスコードです。
draft-reschke-http-status-308
クライアントエラーレスポンス
400 Bad Request このレスポンスは、無効な構文によりサーバがリクエストを理解できないことを示します。 HTTP/0.9 以降
401 Unauthorized リクエストされたリソースを得るために認証が必要です。これは 403 と似ていますが、この場合は認証を行うことが可能です。 HTTP/0.9 以降
402 Payment Required このレスポンスコードは、将来のために予約されています。このコードを作成した当初の目的はデジタル支払システムの使用でしたが、現時点では使用されていません。 HTTP/0.9 および 1.1
403 Forbidden クライアントにコンテンツのアクセス権がなく、サーバは適切なレスポンスの返信を拒否していることを示します。 HTTP/0.9 以降
404 Not Found サーバはリクエストされたリソースを発見できなかったことを示します。このレスポンスコードは Web で頻繁にみられるため、おそらくもっとも有名なコードでしょう。 HTTP/0.9 以降
405 Method Not Allowed リクエストメソッドはサーバにとって既知ですが、無効化されているか使用できないことを示します。2 つの必須メソッド GET および HEAD は無効化してはならず、またこのエラーコードを返すべきではありません。 HTTP/1.1 のみ
406 Not Acceptable このレスポンスは、Web サーバがサーバ駆動型コンテンツネゴシエーションを行った結果、ユーザエージェントから与えられた条件に合うコンテンツが見つからない場合に送信されます。 HTTP/1.1 のみ
407 Proxy Authentication Required これは 401 と似ていますが、プロキシサーバが認証を要求している点が異なります。 HTTP/1.1 のみ
408 Request Timeout このレスポンスはクライアントが以前にリクエストを行っていない、アイドル状態のコネクションにおいて一部のサーバが送信します。サーバは使用していないコネクションの終了を望むことを示します。このレスポンスは Chrome や IE9 など、閲覧を高速化するための HTTP 事前コネクション機能を用いる一部のブラウザでよく使用します (バグ 881804 で、Firefox に同様の機能を実装する作業を追跡しています)。また、一部のサーバはこのメッセージを送らずにコネクションを閉じることに注意してください。 HTTP/1.1 のみ
409 Conflict このレスポンスは、リクエストがサーバの現在の状態と矛盾する場合に送られるでしょう。 HTTP/1.1 のみ
410 Gone このレスポンスは、リクエストされたコンテンツがサーバから削除されている場合に送られるでしょう。 HTTP/1.1 のみ
411 Length Required サーバは Content-Length ヘッダフィールドを要求するがリクエストで定義されていないために、サーバがリクエストを拒否したことを示します。 HTTP/1.1 のみ
412 Precondition Failed サーバ側で適合しない前提条件が、クライアント側のヘッダに含まれていることを示します。 HTTP/1.1 のみ
413 Payload Too Large リクエストの本体がサーバで定めている上限を超えていることを示します。サーバはコネクションを閉じるか、Retry-After ヘッダフィールドを返します。 HTTP/1.1 のみ
414 URI Too Long クライアントがリクエストした URI が、サーバで扱える長さを超えていることを示します。 HTTP/1.1 のみ
415 Unsupported Media Type リクエストされたデータのメディア形式がサーバでサポートされておらず、サーバはリクエストを拒否したことを示します。 HTTP/1.1 のみ
416 Requested Range Not Satisfiable リクエスト内の Range ヘッダフィールドで指定された範囲を満たすことができないことを示します。指定した範囲が、目的の URI のデータサイズを超えている可能性があります。 HTTP/1.1 のみ
417 Expectation Failed このレスポンスコードは、Expect リクエストヘッダで指定された内容がサーバ側と適合しないことを示します。 HTTP/1.1 のみ
418 I'm a teapot ティーポットでコーヒーを淹れようとすると、エラーコード "418 I'm a teapot" が返ります。返されるエンティティボディは short and stout になるでしょう。 HTCPCP/1.0
421 Misdirected Request リクエストは、レスポンスを生成できないサーバに送られました。リクエストの URI に含まれているスキームや権限の組み合わせに対してレスポンスを生成するよう設定されていないサーバが、このコードを送ることがあります。 HTTP/2.0
426 Upgrade Required サーバは現在のプロトコルを使用したリクエストの実行を拒否しましたが、クライアントが別のプロトコルにアップグレードした後は受け入れることができます。サーバは要求するプロトコルを示すために、426 のレスポンスで Upgrade ヘッダフィールドを送信しなければなりません (Section 6.7 of [RFC7230])。 HTTP/1.1 以降
428 Precondition Required オリジンサーバはリクエストが条件付きになることを必要としています。これは "ロストアップデート問題" (クライアントがリソースの状態を取得して変更およびサーバに送信している間に、第三者がサーバの状態を変更して競合が発生すること) を防ごうとするものです。 HTTP/1.1 以降
429 Too Many Requests ユーザは一定の時間内に大量のリクエストを送信しました ("レート制限")。 HTTP/1.1 以降
431 Request Header Fields Too Large ヘッダフィールドが大きすぎるため、サーバはリクエストの処理を望みません。ヘッダフィールドのサイズを削減した後に、リクエストを再送信できます。 HTTP/1.1 以降
サーバエラーレスポンス
500 Internal Server Error サーバ側で処理方法がわからない事態が発生したことを示します。 HTTP/0.9 以降
501 Not Implemented リクエストメソッドがサーバでサポートされておらず、扱えないことを示します。サーバがサポートしなければならない (従って、このコードを返してはならない) メソッドは GETHEAD だけです。 HTTP/0.9 以降
502 Bad Gateway このエラーレスポンスは、リクエストの処理に必要なレスポンスを受け取るゲートウェイとして動作するサーバが不正なレスポンスを受け取ったことを示します。 HTTP/0.9 以降
503 Service Unavailable サーバはリクエストを処理する用意ができていないことを示します。一般的な原因は、サーバがメンテナンスや過負荷でダウンしていることです。このレスポンスとともに問題について説明する、ユーザにわかりやすいページを送信するべきであることに注意してください。このレスポンスは一時的な状況について用いられるべきであり、また可能であれば、サービスが復旧する前に Retry-After: HTTP ヘッダに予定時刻を含めるべきです。また、これら一時的な状況のレスポンスは通常キャッシュされるべきではないことから、Web 管理者はこのレスポンスとともに送られるキャッシュ関連のヘッダに注意しなければなりません。 HTTP/0.9 以降
504 Gateway Timeout このエラーレスポンスは、ゲートウェイとして動作するサーバが時間内にレスポンスを得られない場合に送られます。 HTTP/1.1 のみ
505 HTTP Version Not Supported リクエストで用いられた HTTP のバージョンがサーバでサポートされていないことを示します。 HTTP/1.1 のみ
506 Variant Also Negotiates サーバ内部で設定エラーが発生しました。リクエストの透過的コンテンツネゴシエーションで循環参照が発生しました。 HTTP/1.1
507 Variant Also Negotiates サーバ内部で設定エラーが発生しました。選択したバリアントリソースは透過的コンテンツネゴシエーション自体に携わるよう設定されており、ネゴシエーションプロセスが適切に終了しません。 HTTP/1.1
511 Network Authentication Required ステータスコード 511 は、クライアントがネットワークでアクセスするために認証が必要であることを示します。 HTTP/1.1

ドキュメントのタグと貢献者

タグ: 
 このページの貢献者: hamasaki, yyss
 最終更新者: hamasaki,