totonoe

ネットワークを整える

初級

HTTPステータスコードを整える

= 200や404、500が何の意味かを引ける早見表

200 や 404、500 といった「3桁の番号」が何を意味するのかを、番号や語で検索しながら確かめられる早見表です。最初の桁(1〜5)で大分類が決まるので、クラス別に色分けして並べています。検索・絞り込みはこの端末の中で完結します(送信ゼロ)。

i

TLDR — 30秒で分かる

404や500など主要なHTTPステータスコードを、番号・キーワードで即検索できる早見。先頭の桁で意味が分かる5分類を色分け表示。

主な機能を見る
  • 番号・語による即時検索(送信ゼロ)
  • 1xx〜5xxのクラス別絞り込み
  • クラスごとの色分け(2xx緑・4xx金茶・5xx赤)
  • 各コードの意味+よくある原因/対処を日本語で
  • 大分類をアニメで解説
アニメで見る — ステータスコードの大分類 ▶ 再生で1ステップずつ動きます
💻

あなた

リクエスト

📨 このページを見せて
🖥️

サーバ

3桁で返事

🟢 2xx うまくいった
🔵 3xx 別の場所を見て
🟠 4xx こちら側の誤り
🔴 5xx サーバ側の不調

STEP 1

※ イメージ図です。下の早見表で、番号や語からコードを検索できます。

ステータスコード早見表 入力すると即時に絞り込み(送信ゼロ)

31 件のコードを収録

1xx 情報

— 受け取った、続けて(途中経過のお知らせ)

100 Continue 1xx

継続

リクエストの最初の部分は受理された。残り(本文)を送ってよい、という途中経過の合図。

原因・対処:大きな本文を送る前に Expect: 100-continue で「受け取れる?」と確認したときに返る。通常は意識せず処理される。

101 Switching Protocols 1xx

プロトコル切替

クライアントの要求どおり、別のプロトコルへ切り替える。

原因・対処:WebSocket への昇格(Upgrade: websocket)でおなじみ。HTTP から双方向通信へ移るときに返る。

103 Early Hints 1xx

先行ヒント

本番のレスポンスより先に、先読みすべき資源(CSS/JS 等)のヒントだけを返す。

原因・対処:Link: rel=preload と組み合わせて表示を高速化する用途。対応ブラウザ・CDN が増えてきた比較的新しいコード。

2xx 成功

— うまくいった

200 OK 2xx

成功

リクエストは成功し、結果(本文)が返っている。もっとも基本的な成功。

原因・対処:GET なら取得した内容、POST なら処理結果が本文に入る。困ったら「正常」の目印。

201 Created 2xx

作成完了

リクエストが成功し、新しいリソースが作成された。

原因・対処:POST/PUT で新規登録した直後に返るのが定石。Location ヘッダに作られた URL が入ることが多い。

202 Accepted 2xx

受理(処理は未完)

受け付けたが、処理はまだ完了していない(あとで非同期に進む)。

原因・対処:バッチ・キュー投入など「いったん預かった」系。結果は別途ポーリングや通知で確認する設計に使う。

204 No Content 2xx

内容なし

成功したが、返す本文はない。

原因・対処:DELETE 成功や、保存だけして画面遷移しないフォーム送信などで使う。本文が空でも「失敗」ではない点に注意。

206 Partial Content 2xx

部分取得

リクエストされた範囲(一部)だけを返した。

原因・対処:動画のシーク、ダウンロードの再開(Range ヘッダ)で返る。全体ではなく続きや一部分を受け取った合図。

3xx リダイレクト

— 別の場所を見て(転送)

301 Moved Permanently 3xx

恒久的に移動

リソースは新しい URL へ恒久的に移った。以後はそちらを使う。

原因・対処:URL 変更・サイト統合・http→https・www あり/なし統一などで使う。SEO 評価も移したいなら 302 でなく 301。

302 Found 3xx

一時的に移動

今は別の URL にあるが、一時的なので元の URL は使い続けてよい。

原因・対処:元は曖昧な仕様で、メソッドが GET に変わる実装が多い。意図を明確にしたいなら 303/307 を選ぶ。

303 See Other 3xx

他を参照

結果は別の URL を GET で見にいって、という指示。

原因・対処:フォーム POST 後に結果ページへ GET で飛ばす「PRG パターン」の要。リロード時の二重送信を防げる。

304 Not Modified 3xx

未更新

前回から変わっていないので、キャッシュをそのまま使ってよい。

原因・対処:If-None-Match / If-Modified-Since による条件付きリクエストの応答。本文を返さず通信量を節約する。

307 Temporary Redirect 3xx

一時リダイレクト(メソッド保持)

一時的に別 URL へ。元のメソッド(POST 等)と本文をそのまま引き継ぐ。

原因・対処:302 の曖昧さを正した版。POST を POST のまま転送したいときはこちら。

308 Permanent Redirect 3xx

恒久リダイレクト(メソッド保持)

恒久的に別 URL へ。メソッドと本文を変えずに引き継ぐ。

原因・対処:301 がメソッドを変えうるのに対し、308 は POST 等をそのまま維持する。API のエンドポイント移転に向く。

4xx クライアントエラー

— こちら側(リクエスト)の誤り

400 Bad Request 4xx

不正なリクエスト

構文やパラメータが壊れていて、サーバが解釈できない。

原因・対処:必須項目の欠落・型違い・壊れた JSON など。まず送信したリクエスト内容を疑う。

401 Unauthorized 4xx

未認証

認証が必要、または認証情報が不正。だれであるかを示せていない。

原因・対処:名前は Unauthorized だが意味は「未認証」。トークン切れ・ログインしていない等。WWW-Authenticate が付くことがある。

403 Forbidden 4xx

禁止(権限なし)

だれかは分かっているが、その操作をする権限がない。

原因・対処:権限不足のほか、IP 制限・参照元チェックなどでも返る。401(未認証)との違いに注意。

404 Not Found 4xx

見つかりません

指定された URL にリソースが存在しない。

原因・対処:URL の打ち間違い・削除済み・公開前など。存在を隠す目的で 403 の代わりに使うこともある。

405 Method Not Allowed 4xx

メソッド不許可

その URL に対して、使ったメソッド(GET/POST 等)は許可されていない。

原因・対処:例:閲覧専用エンドポイントに POST した等。Allow ヘッダに使えるメソッドが列挙される。

408 Request Timeout 4xx

リクエストタイムアウト

クライアントからのリクエストが時間内に届ききらず、待ち切れずに切った。

原因・対処:回線が遅い・送信が途中で止まった等。再送で解決することが多い。

409 Conflict 4xx

競合

現在の状態と矛盾していて処理できない(衝突)。

原因・対処:同時編集の上書き衝突・重複登録など。最新状態を取り直してからやり直す設計にする。

410 Gone 4xx

消滅(恒久的に不在)

かつて存在したが、恒久的に削除されもう戻らない。

原因・対処:404 が「今ない」なのに対し、410 は「もう永遠にない」と明示。検索エンジンの再巡回を減らせる。

418 I'm a teapot 4xx

私はティーポット

ティーポットにコーヒーを淹れさせることはできない、というジョークコード。

原因・対処:エイプリルフール由来(RFC 2324)の小ネタ。実用ではないが、いたずら防止やイースターエッグで使われる。

422 Unprocessable Content 4xx

処理不能な内容

構文は正しいが、内容(意味)が妥当でなく処理できない。

原因・対処:バリデーションエラーの定番。メール形式違反・必須の組合せ違反など、400 より「意味の不備」を表したいときに。

425 Too Early 4xx

早すぎる

リプレイ攻撃の恐れがあるため、まだ処理したくない(やり直して)。

原因・対処:TLS 1.3 の 0-RTT 早期データに関係する比較的新しいコード。安全のため再送を促す。

429 Too Many Requests 4xx

リクエスト過多

短時間に送りすぎ。レート制限に達した。

原因・対処:API の流量制限で頻出。Retry-After ヘッダの秒数だけ待ってから再試行する。

5xx サーバエラー

— サーバ側の不調

500 Internal Server Error 5xx

サーバ内部エラー

サーバ側で予期しない不具合が起きた、という総称的なエラー。

原因・対処:例外・バグ・設定ミスなど中身は不明。サーバのログを見て原因を特定する。利用者側では直せない。

501 Not Implemented 5xx

未実装

その機能(メソッド等)をサーバが実装していない。

原因・対処:対応していないメソッドや、まだ作っていない機能を叩いたとき。405 と違い「そもそも未対応」。

502 Bad Gateway 5xx

不正なゲートウェイ

中継役(ゲートウェイ/プロキシ)が、上流サーバから不正な応答を受け取った。

原因・対処:リバースプロキシの先(アプリサーバ)が落ちている・応答が壊れている等。上流の稼働を確認する。

503 Service Unavailable 5xx

サービス利用不可

一時的に処理できない(過負荷・メンテナンス中など)。

原因・対処:混雑やメンテで一時停止中。Retry-After が付くことがある。しばらく待てば回復する見込み。

504 Gateway Timeout 5xx

ゲートウェイタイムアウト

中継役が、上流サーバからの応答を時間内に受け取れなかった。

原因・対処:上流の処理が重い・ハングしている等。タイムアウト設定や上流の負荷を見直す。

読み方・5つの大分類

最初の1桁を見れば、だいたいの意味が分かる。

  1. 1xx

    情報(途中経過のお知らせ)

    「受け取った、続けて」という中間の合図。100 Continue や、WebSocket への切替(101)など。ふだん画面に出ることは少なめです。

  2. 2xx

    成功

    うまくいった印。代表は 200 OK。新規作成は 201、本文なしの成功は 204 のように、成功の種類で番号が分かれます。

  3. 3xx

    リダイレクト(別の場所を見て)

    「別の URL を見てね」という転送。恒久的な引っ越しは 301、一時的なら 302/307。キャッシュ流用の合図 304 もここ。

  4. 4xx

    クライアントエラー(こちら側の誤り)

    リクエストの送り方に問題がある状態。404 見つからない、401 未認証、403 権限なし、429 送りすぎ など。まず自分の送信内容を見直します。

  5. 5xx

    サーバエラー(サーバ側の不調)

    サーバ側のトラブル。500 内部エラー、502/504 中継の問題、503 利用不可など。利用者側では直せないことが多く、時間をおくか管理者に連絡します。

⚠ 401(未認証)と 403(権限なし)の違い

401 は「あなたが誰か分からない(ログインして)」、403 は「誰かは分かるが、その操作は許されていない」。名前の Unauthorized に引きずられがちですが、401=未認証と覚えると混同しません。

🔒 検索・絞り込みはすべてあなたのブラウザの中で完結します。入力した文字はサーバには送られません(送信ゼロ)。収録は実務でよく出会う 31 コード。すべてを網羅したものではありません。

よくある質問

Q. HTTPステータスコードとは何ですか?
A. Webサーバがリクエストの結果を表す3桁の番号です。最初の桁(1〜5)で大分類が決まり、2xxは成功、4xxはこちら側の誤り、5xxはサーバ側の不調を表します。
Q. 401と403の違いは何ですか?
A. 401は「あなたが誰か分からない(未認証)」、403は「誰かは分かるが操作の権限がない」という意味です。401=未認証と覚えると混同しません。
Q. 404と410はどう違いますか?
A. 404は「今は見つからない」、410は「恒久的に削除されもう戻らない」を明示します。410を返すと検索エンジンの再巡回を減らせます。
Q. 301と302はどちらを使えばよいですか?
A. URLが恒久的に移ったなら301、一時的なら302です。SEO評価も移したい引っ越しには301。メソッドを保ったまま転送したい場合は307/308を選びます。
Q. 500と502・503・504は何が違いますか?
A. いずれもサーバ側の問題です。500は内部の予期しないエラー、502/504は中継(プロキシ)と上流サーバ間の問題、503は過負荷やメンテによる一時停止を表します。
Q. 入力した検索語はどこかに送信されますか?
A. いいえ。検索・絞り込みはすべてあなたのブラウザの中で完結します(送信ゼロ)。
Q. すべてのステータスコードが載っていますか?
A. いいえ。実務でよく出会う主要なコードを収録した早見表です。網羅的な一覧ではなく、すばやく意味を引くためのものです。

入力値はURLの「#」以降に入るためサーバーには送信されません。リンクを開くと同じ状態を復元します。

RELATED TOOLS

続けて整える

KOINOBORI ECOSYSTEM

私たちが運営するサイト