Skip to content

HTTPステータスコード 解説

よく使われるHTTPレスポンスのステータスコードをクラス別にまとめた一覧。意味と、見かける場面を解説します。HTTPステータスコードツールのクイックリファレンス版です。

HTTPステータスコードには共通のパターンがあります。最初の桁がクラスを表し、残りが詳細です。1xxは情報、2xxは成功、3xxはリダイレクト、4xxはクライアントのエラー、5xxはサーバーの失敗を意味します。まず最初の桁を読みましょう。コンパニオンツールでは個々のコードを詳しく調べられます。

リファレンステーブル · 55 項目http-status-codes ツールを開く →
55 of 55 rows
1xx 情報応答
Continueサーバーがリクエストヘッダーを受信し、クライアントはボディを送信できます。大きなボディをアップロードする前の事前チェックの後。
Switching Protocolsサーバーがクライアントの要求したプロトコルへの切り替えに同意しました。HTTP接続をWebSocketへアップグレードするとき。
Processingサーバーがリクエストを受信し、まだ処理中です。WebDAVサーバーが長いリクエストを確認し、クライアントのタイムアウトを防ぐとき。
Early Hintsサーバーが最終レスポンスの準備ができる前に暫定ヘッダーを送ります。ページのレンダリング中にブラウザがアセットをプリロードできるようにするとき。
2xx 成功
OKリクエストが成功し、レスポンスボディに結果が入ります。GETやPUTの標準的な成功。
Createdリクエストが成功し、新しいリソースが作成されました。何かを生成するPOSTが成功した後に返す。
Acceptedリクエストは処理のために受理されましたが、まだ完了していません。長時間のジョブが開始され、非同期で実行されているとき。
Non-Authoritative Informationリクエストは成功しましたが、返されたデータは途中で変換されています。プロキシやキャッシュがオリジンではなく改変されたメタデータを返すとき。
No Contentリクエストが成功し、返すボディはありません。DELETEの成功、または返す内容のないPUT。
Reset Contentリクエストが成功し、クライアントは送信元のビューをリセットすべきです。フォーム送信の後、ページにフィールドのクリアを指示するとき。
Partial Contentサーバーは要求どおりリソースの一部のみを返します。Rangeリクエストのバイト範囲を提供するとき。
3xx リダイレクト
Moved Permanentlyリソースには恒久的な新しいURLがあり、以後のリクエストはそれを使うべきです。ページが移動し、検索エンジンがインデックスを更新する必要があるとき。
Foundリソースは一時的に別のURLにありますが、元のURLを使い続けてください。一時的にログインページへリダイレクトするとき。
See Other答えは別のURLにあり、GETで取得しなければなりません。PRGパターン。POSTを結果ページへリダイレクトし、更新での再送信を防ぐ。
Not Modifiedキャッシュされたコピーがまだ有効なため、サーバーはボディを送りません。クライアントのキャッシュが最新の条件付きGET。
Use Proxyリクエストはレスポンスで指定されたプロキシ経由で送られなければなりません。レガシーなプロキシネットワーク。2011年以降は非推奨。
Temporary Redirectリソースは一時的に別の場所にあり、元のリクエストメソッドを保持しなければなりません。302と同様だが、リダイレクトでもPOSTはPOSTのまま。
Permanent Redirectリソースには恒久的な新しいURLがあり、元のリクエストメソッドを保持しなければなりません。301と同様だが、リダイレクトでもPOSTはPOSTのまま。
4xx クライアントエラー
Bad Request不正な構文のため、サーバーがリクエストを理解できませんでした。不正なJSON、または必須フィールドの欠落。
Unauthorized認証が必要であり、欠けていたか失敗しました。トークンなし、または無効・期限切れのトークン。
Payment Requiredリクエストには支払いが必要ですが、仕様はその方法を定義していません。ペイウォールの目印として使うAPIもあります。ほとんどは使いません。
Forbiddenクライアントは認証済みですが、このリソースへのアクセスは許可されていません。ログインは有効だが、このリソースへの権限がないとき。
Not FoundサーバーにはこのURLのリソースがありません。不明なURL、または存在しないID。
Method Not AllowedURLは存在しますが、使用されたリクエストメソッドを許可していません。GETのみ受け付けるエンドポイントへのPOST。
Not AcceptableサーバーはクライアントのAcceptヘッダーに合うコンテンツを返せません。クライアントはXMLのみ要求したが、APIはJSONしか返さないとき。
Proxy Authentication Requiredクライアントはリクエストを進める前にプロキシで認証する必要があります。企業プロキシが未認証のリクエストを拒否するとき。
Request Timeoutクライアントの送信が遅すぎて、サーバーが待つのをやめました。ボディの到着が完了する前に止まったアップロード。
Conflictリクエストがリソースの現在の状態と競合しています。重複するメールアドレス、または同じレコードの編集競合。
Goneリソースはかつて存在しましたが、恒久的に削除されました。意図的に廃止されたエンドポイント。404より強い意味。
Length RequiredリクエストにはContent-Lengthヘッダーが必要ですが、ありません。事前にサイズを知る必要があるサーバーがストリーミングボディを拒否するとき。
Precondition FailedIf-Matchなどのヘッダー事前条件がfalseと評価されました。クライアントが読んだ後でレコードが変わった楽観的編集。
Content Too Largeリクエストボディがサーバーの受け入れ上限を超えています。サーバーの最大ボディサイズを超えるアップロード。
URI Too LongリクエストURLがサーバーが解釈を許容する長さを超えています。フォームが誤ってGETのクエリ文字列にシリアライズされ、際限なく伸びた場合。
Unsupported Media Typeリクエストボディの形式が、エンドポイントが受け入れるものではありません。JSON専用エンドポイントへのContent-Type: text/plainのPOST。
Range Not SatisfiableRangeヘッダーのバイト範囲がリソースに収まりません。ダウンロード再開時にファイル終端を超えたバイトを要求するとき。
Expectation FailedサーバーはExpectヘッダーで示された期待に応えられません。サーバーが100-continueの期待を拒否するとき。
I'm a teapotサーバーは急須であり、コーヒーを入れることを拒みます。1998年のエイプリルフールの冗談が消えずに残ったもの。APIが遊びで返します。
Misdirected Requestリクエストが、それに対するレスポンスを生成できないサーバーに送られました。再利用された接続が、このサーバーが扱わないホストへ向かったとき。
Unprocessable Entityリクエストは整形式ですが、その値が意味的検証に失敗します。フィールドがビジネスルールに違反する有効なJSON。
Too Earlyサーバーはリプレイの危険があるリクエストを拒否します。鍵のローテーション前に再試行された非冪等なリクエストの拒否。
Upgrade Requiredこのリソースを使うには、クライアントは別のプロトコルへ切り替える必要があります。TLSやWebSocketを必須とするエンドポイント。
Precondition Requiredサーバーは、リクエストが送らなかった条件付きヘッダーを要求します。失われた更新を防ぐためにIf-Matchを要求するAPI。
Too Many Requestsクライアントが一定の時間枠内に多数のリクエストを送信しました。レート制限に到達。バックオフして再試行。
Request Header Fields Too Large1つ以上のヘッダーフィールドが大きすぎて処理できません。肥大化したクッキーやトークンがサイトへの全リクエストを妨げるとき。
Unavailable For Legal Reasonsリソースは削除要求や地域制限などの法的理由でブロックされています。政府による削除要求、または特定の国でブロックされたページ。
5xx サーバーエラー
Internal Server Errorサーバーが予期しない状態に遭遇し、失敗しました。サーバー上の未処理の例外やバグ。
Not Implementedサーバーは要求されたメソッドや機能をサポートしていません。エンドポイントが宣言だけでまだ実装されていないとき。
Bad Gatewayゲートウェイやプロキシが上流サーバーから無効なレスポンスを受け取りました。リバースプロキシがバックエンドに到達できなかったとき。
Service Unavailableサーバーが一時的にリクエストを処理できません。メンテナンス、過負荷、または依存サービスのダウン。
Gateway Timeoutゲートウェイやプロキシが上流サーバーから時間内にレスポンスを得られませんでした。バックエンドが遅すぎてプロキシが諦めたとき。
HTTP Version Not SupportedサーバーはリクエストのHTTPバージョンをサポートしていません。サーバーが学習したことのないプロトコルバージョンで話すクライアント。
Variant Also Negotiates透過的コンテンツネゴシエーションが循環参照に終わりました。実験的なコンテンツネゴシエーションを行う設定ミスのサーバー。
Insufficient Storageサーバーはリクエスト完了に必要な表現を保存できません。割り当てられたストレージがいっぱいのWebDAVサーバー。
Loop Detectedサーバーはリクエスト処理中に無限ループに陥りました。自分自身を参照するWebDAVバインディング。
Network Authentication Requiredアクセスを得るにはクライアントはネットワークで認証する必要があります。ホテルや空港のキャプティブポータルがリクエストを横取りするとき。