flowchart TB subgraph HTTPステータスコード体系 A1["🌐 1xx 情報系"] A2["✅ 2xx 成功系"] A3["🔄 3xx リダイレクト系"] A4["❌ 4xx クライアントエラー"] A5["🚨 5xx サーバーエラー系"] end classDef info fill:#3498db,color:#fff classDef success fill:#27ae60,color:#fff classDef redirect fill:#f39c12,color:#fff classDef clientErr fill:#e67e22,color:#fff classDef serverErr fill:#c0392b,color:#fff class A1 info class A2 success class A3 redirect class A4 clientErr class A5 serverErr
ステータスコードカテゴリ概要
| カテゴリ | 色コード | 意味 |
| 1xx 情報 | 青色 `#3498db` | 処理中通知 |
| 2xx 成功 | 緑色 `#27ae60` | 正常終了 |
| 3xx リダイレクト | 橙色 `#f39c12` | 追加処理必要 |
| 4xx クライアントエラー | 橙色 `#e67e22` | リクエスト異常 |
| 5xx サーバーエラー | 赤色 `#c0392b` | サーバー処理失敗 |
1xx 情報系ステータスコード
| コード | 名称 | 説明 |
| 100 | Continue | リクエスト継続指示 |
| 101 | Switching Protocols | プロトコル変更承認 |
| 102 | Processing | 処理中通知(WebDAV) |
| 103 | Early Hints | 事前レスポンスヘッダー |
主な利用シナリオ
100 Continue
101 Switching Protocols
2xx 成功ステータスコード
| コード | 名称 | 説明 |
| 200 | OK | 正常終了 |
| 201 | Created | リソース新規作成 |
| 202 | Accepted | 受理(非同期処理) |
| 204 | No Content | 成功但しレスポンス無し |
| 206 | Partial Content | 範囲リクエスト成功 |
主な検証方法
201 Created
curl -i -X POST https://example.com/users \
-H "Content-Type: application/json" \
-d '{"name":"田中"}'
206 Partial Content
curl -i -H "Range: bytes=0-99" https://example.com/file.zip
3xx リダイレクトステータスコード
| コード | 名称 | 説明 |
| 301 | Moved Permanently | 恒久的移動 |
| 302 | Found | 一時的移動 |
| 303 | See Other | GETリダイレクト |
| 304 | Not Modified | キャッシュ利用 |
| 307 | Temporary Redirect | メソッド保持リダイレクト |
| 308 | Permanent Redirect | 恒久的メソッド保持 |
304 Not Modified検証
curl -i \
-H "If-None-Match: \"abc123\"" \
https://example.com/data
4xx クライアントエラーコード
| コード | 名称 | 説明 |
| 400 | Bad Request | リクエスト構文エラー |
| 401 | Unauthorized | 認証必要 |
| 403 | Forbidden | 権限不足 |
| 404 | Not Found | リソース不存在 |
| 429 | Too Many Requests | レート制限超過 |
401 Unauthorized対応
curl -i \
-H "Authorization: Bearer <token>" \
https://example.com/protected
5xx サーバーエラーコード
| コード | 名称 | 説明 |
| 500 | Internal Server Error | 内部処理異常 |
| 502 | Bad Gateway | アップストリーム障害 |
| 503 | Service Unavailable | 過負荷/メンテナンス |
| 504 | Gateway Timeout | タイムアウト |
502 Bad Gateway検証
curl -i http://localhost:8080/health
共通診断ツール
# リダイレクト追跡
curl -L -I https://example.com/redirect
# ネットワーク状態確認
traceroute example.com
flowchart LR A["🔍 ステータスコード"] --> B{分類} B -->|2xx| Z["✅ 成功"] B -->|3xx| Y["🔄 リダイレクト確認"] B -->|4xx| X["❌ リクエスト修正"] B -->|5xx| W["🚨 サーバー状態確認"]