HTTPステータスコードとは?

HTTPステータスコードは、サーバーがリクエストの結果を3桁の数字で伝える合図です。

HTTPステータスコード のアイキャッチ図解
まずは、こう考えるとつかみやすいです。

HTTPステータスコードは、宅配便の伝票に押される配達状況のスタンプのようなもので、「配達完了」「あて先不明」「転送中」など結果をひと目で伝えます。

ひとことで言うと

HTTPステータスコードは、HTTPのリクエストに対してサーバーが返す、結果を表す3桁の数字です。200番台なら成功、400番台なら依頼側の間違い、500番台ならサーバー側のトラブルというように、数字の範囲で意味が決まっています。

たとえ話でもう少し詳しく

HTTPステータスコードは、宅配便の伝票に押される配達状況のスタンプに似ています。「配達完了」なら荷物が無事届いた合図、「あて先不明で返送」なら住所に問題があった合図、「転送中」なら別の場所へ回されている合図です。ブラウザがWebページを取りに行くときも同じで、サーバーはレスポンスの中身を返すだけでなく、結果を表す数字も一緒に返します。この数字があるおかげで、成功したのか、こちらの入力ミスなのか、サーバー側のトラブルなのかを、中身を読まなくても判断できます。

よく出る場面・使いどころ

  • ページが正しく開けたかを確認するとき
  • リンク切れでページが見つからない(404)とき
  • 引っ越し先のURLへ自動転送するリダイレクトを設定するとき
  • サーバー側の不具合を切り分けたいとき

似た言葉との違い

  • HTTP: HTTPはやり取り全体の共通ルール。ステータスコードは、その中で結果だけを伝える3桁の数字
  • リダイレクト: リダイレクトは転送そのものの仕組み。301や302といった3xx番台のステータスコードで、その転送を実行するよう伝える

実務で気にするポイント

  • 200番台でもキャッシュされた古い内容が返っている場合があるため、中身も確認する
  • 404が出ても壊れているとは限らず、URLの入力ミスであることも多い
  • 500番台が続くときはサーバー側のログを確認する
  • リダイレクト(3xx)を多段に重ねると表示速度が落ちるため、必要な分だけにする

注意: ステータスコードはあくまで結果の分類であり、200が返ってもレスポンスの中身が正しいとは限りません。表示や動作は、コードとあわせて実際の内容も確認しましょう。