HTTPステータスコードとは?
Webブラウザがサーバーにリクエストを送ると、サーバーは必ず3桁の数字(ステータスコード)を返します。この数字がリクエストの結果を表しています。
「404 Not Found」はよく見かけますよね。これは「要求されたページが存在しない」という意味。エンジニアだけでなく、Webを使う人なら誰でも遭遇したことがあるはずです。
このツールでは、1xx〜5xxのすべてのステータスコードの意味を即座に調べることができます。
ステータスコードの分類
- 1xx(情報): 処理が継続中。100 Continue、101 Switching Protocols など
- 2xx(成功): リクエストが成功。200 OK、201 Created、204 No Content など
- 3xx(リダイレクト): 別のURLへ誘導。301(恒久転送)、302(一時転送)、304(変更なし)
- 4xx(クライアントエラー): リクエスト側の問題。400・401・403・404・422など
- 5xx(サーバーエラー): サーバー側の問題。500・502・503・504など
よく使う・よく見るコード
- 200 OK — 成功。最も基本のレスポンス
- 201 Created — POST成功でリソース作成完了(API開発でよく返す)
- 204 No Content — 成功だがレスポンスボディなし(DELETE成功時など)
- 301 Moved Permanently — URLが恒久的に移動(SEOで重要)
- 400 Bad Request — リクエストの形式が不正
- 401 Unauthorized — 認証が必要(未ログイン)
- 403 Forbidden — 権限なし(ログイン済みでもアクセス不可)
- 404 Not Found — リソースが存在しない
- 422 Unprocessable Entity — バリデーションエラー(Rails/FastAPIでよく使う)
- 429 Too Many Requests — レート制限に引っかかった
- 500 Internal Server Error — サーバー内部エラー(バグ)
- 502 Bad Gateway — プロキシ先のサーバーがエラー
- 503 Service Unavailable — サーバーが一時的に利用不可
API開発での使い方
REST APIを設計するとき、適切なステータスコードを返すのは良いAPI設計の基本です。
- GET成功 → 200
- POST成功(新規作成) → 201
- DELETE成功(内容なし) → 204
- バリデーションエラー → 422
- 認証エラー → 401
- 権限エラー → 403
- 存在しないID → 404
すべてのエラーを500で返すAPIは「内部の問題か、リクエストの問題か」をクライアントが判断できません。適切な4xx/5xxの使い分けがAPI品質を高めます。
SEOとステータスコードの関係
Googleなどの検索エンジンはステータスコードを重視します。
- 301: 旧URLから新URLへのSEO評価の引き継ぎ(恒久移転)
- 302: 一時的なリダイレクト(SEO評価は旧URLに残る)
- 404: ページが消えた(クロール停止・評価消滅)
- 410 Gone: 意図的に削除した(404より早くインデックス削除される)
サイトリニューアル時のURL変更では301リダイレクトが正解。302はSEO的には不利です。
このツールを作った理由
コードレビューで「ここは404じゃなくて403を返すべき」「422と400の使い分けは?」という議論がよく起きます。そのたびにMDNやWikipediaを開いて調べていました。
辞典として手元に置いておけるツールがあれば便利だと思って作りました。番号を入力するだけで説明が出てくるシンプルな作りです。