HTTPステータスコード
宅配業者さんが配達状況を「配達完了」「宛先不明」「ご不在」などの短い3桁の数字で知らせてくれる通知メッセージです。
定義 HTTPステータスコードは、ウェブブラウザがサーバーに「ページや画像を見せて」とリクエストした際、サーバーがその処理結果を伝える3桁の数字シグナルです。100番台から500番台まで先頭の数字によって、処理成功、ページ移転、ユーザー側の入力ミス、サーバーの故障などを明確に示します。
先頭の数字を見るだけで結果がわかります
私たちがネットサーフィンをしているとき、スマートフォンはウェブサイトのデータが置かれたコンピュータ(サーバー)へ絶え間なくリクエストを送っています。このときサーバーは、リクエストを受け取るとすぐに処理状況を要約した3桁の数字を返答として送り返します。これがステータスコードです。
一番のポイントは先頭の数字にあります。100番台から500番台まで、最初の1桁が5つの大きな状態を表しているからです。200番台は「成功(2xx)」、300番台は「別のアドレスへの転送(3xx)」を意味します。普段スムーズにウェブページが見られているなら、画面の裏側でサーバーが200番(OK)のコードをせっせと届けてくれている証拠です。
一方、問題が発生すると400番台や500番台が現れます。400番台はURLの打ち間違いなどユーザー側のミスで、500番台はサーバー側の機器やシステムに異常がある場合です。このように先頭の数字を確かめるだけで、どちら側に原因があるのかが即座に判明します。
私たちがネットで最もよく遭遇する定番コード
インターネットを使っていて最も目にする機会が多いのが「404 Not Found」です。これはサーバー内にリクエストされたページやファイルが存在しないことを意味します。アドレスバーの文字を打ち間違えたり、管理者がページを削除したりした際に、存在しないページを探そうとすると404が表示されます。
また、ログインせずに会員専用ページを開こうとすると「403 Forbidden」を目にすることがあります。サーバーは要求自体は理解したものの、閲覧する権限がないためアクセスを拒絶したというサインです。部屋のドアはあるけれど、鍵を持っていない状態に似ています。
人気チケットの予約や限定セールでアクセスが殺到した際には、「500」や「503」が出やすくなります。500(Internal Server Error)はサーバー内部のプログラムで予期せぬ故障が起きた状態、503(Service Unavailable)はアクセス集中で処理能力を超えてしまい、一時的にサーバーが対応できなくなっている状態です。
もう少し詳しく知ると
より正確に言うと、ステータスコードは私たちが目にするウェブページの本文(ボディ)ではなく、目に見えない通信の見出し部分(ヘッダー)に含まれて届きます。ブラウザはこの見出しに書かれた数字を真っ先に読み取ってから、次の動作を決定します。
たとえばサーバーが301や302といった300番台のコードを返すと、ブラウザはエラー画面を出さずに指定された新しいURLへ自動的に移動(リダイレクト)させます。一瞬で新しいページに切り替わるため、ユーザーは裏側で数字のやり取りが行われたことすら気づきません。
また、このステータスコードは世界共通の標準規格として定められています。米国のサーバーでも日本のサーバーでも404は同じく「見つかりません」を意味するため、世界中のあらゆるプログラムが異なるプログラミング言語で作られていても、スムーズに対話できる土台になっています。
🤔 よくある誤解
404エラーや500エラーの画面が出るのは、自分のスマートフォンのWi-Fiやネット回線が切れたからだ。
ステータスコードを受信できた時点で、インターネット接続とサーバーへの通信自体は正常に行われています。404は探しているページがサーバー上に存在しないことを示し、500はサーバー側のコンピュータ内部でエラーが発生していることを意味します。
🧺 日常で出会う場面
ウェブサーバーがブラウザからのリクエストをどのように処理したかを伝える、世界共通の3桁の数字シグナルです。