ウェブサイトを見ている時に、真っ白なページに「404 Not Found」というメッセージの書かれたページを見た経験、誰しもあるのではないでしょうか?最近のTCDテーマでも用意されているアレですね。


そう『404』はそのURLは存在しません。ページが見つかりませんでした。という意味を示していて、これらはステータスコード(エラーコード)と呼ばれています。似たステータスコードに「403 Fobidden」などもありますが番号それぞれに意味があるんですね。当記事ではブラウザに表示されるインターネットのステータスコードと意味について調べてまとめました。閲覧中だけでなくご自身の運営するサイトで遭遇する可能性もあります。トラブルの際、慌てることなく冷静に対応できるように事前の知識として活用いただけたらと思います。

5つに大別できるステータスコード(エラーコード)

「404 Not Found」に関してもHTTP通信においてサーバからのレスポンスを3ケタの数字で表現する”ステータスコード”と言われるものの1種です。このステータスコードは5種類に大別できるので頭の数字を中心に覚えていきましょう。、1xxは情報、2xxは成功、3xxはリダイレクション、4xxはクライアントエラー、5xxはサーバーエラーのことを表します。ステータスコードは、前出の通り100~500番台の数字が割り振られていて、それぞれ固有の意味があります。ステータスコードの中でも、400番台と500番台のメッセージのことを特にエラーコードと呼んでいます。

ステータスコードについてまとめられている参考サイト
World Wide Web Consortium(W3C)
IIS 7.0、IIS 7.5、および IIS 8.0 の HTTP 状態コード – microsoftサポート

情報 ステータスコード – 1xx

主に仮の応答を示します。クライアントコンピューターからのリクエストは受け入れられ、処理は継続されていることを意味します。

  • 100 – 継続します。
  • 101 – プロトコルを切り替えます。

成功 ステータスコード – 2xx

このステータスコードは、サーバーが要求を正常に受け取ったことを現します。

  • 200 – OK。クライアント要求が成功しました。
  • 201 – 作成されました。
  • 202 – 受理されました。
  • 203 – 認証情報がありません。
  • 204 – コンテンツがありません。
  • 205 – コンテンツをリセットします。
  • 206 – コンテンツの一部分です。

リダイレクション ステータスコード – 3xx

このステータスコードは、要求を完了するために、クライアントのブラウザーが追加の操作を行う必要があることを示します。たとえば、クライアント ブラウザーからサーバー上の他のページを要求すること、または、プロキシ サーバーを使用して要求を再度実行することが必要な場合があります。

リダイレクト種類については以下記事に詳細をまとめています。

  • 301 – 恒久的に移動されました。ずっと移行先URLを使用していく場合にこのステータスコードを返すようにしておく必要があります。
  • 302 – リクエストしたリソースが一時的に移動されている
  • 303 – 他を参照するように。リクエストに対するレスポンスが他のURLに存在するときに返される。
  • 304 – アクセス自体に問題はなく、対象ページのコンテンツ(テキストやメニュー、画像など)が前回のアクセス時から更新されていないことを伝えています。
  • 307 – 呼び出す内容については一時的なリダイレクトです。変更先のURIにリクエストして欲しい場合は『307 Temporary Redirect』を返すべきであるようです。302の規格外な使用法が横行したため、302の本来の使用法を改めて定義したものという背景もあるようです。

クライアント エラーコード – 4XX

400番台のエラーコードは「クライアントエラー」と呼ばれるもので、ページを見る人(閲覧者、クライアント)側にエラーの原因があることを示しています。404ページについては以前に少しご紹介したことがあります。

400番台の主なエラー内容とその対策を以下の表にまとめてみました。

番号 名称 意味と対策
400 Bad Request
不正リクエスト
  • ブラウザからのリクエストを適切に処理できない場合に表示されます。

ブラウザ変更、Cookieやキャッシュを削除してみてください。

401 Unauthorized
認証エラー
  • ログインすることが必要なページで、IDやパスワードを間違えた場合に表示されることがあります。

IDやパスワードをよく確認して下さい。

403 Forbidden
アクセス禁止
  • サイト管理者がアクセスを禁止しているページにアクセスした時に表示されます。

閲覧者にできることはありません。アクセスが集中していて、ページにつながりにくい時も表示されることがあります。

404 Not Found
ページが存在しない
  • アクセスしたページが削除されたため、ページを表示できない時のメッセージです。

閲覧者にできることはありません。

408 Request Timeout
タイムアウト
  • 決められた通信時間内にページを表示できなかった時に出るメッセージです。

ネットの接続速度が低下している可能性があります。

サーバー エラーコード – 5XX

500番台のエラーは「サーバーエラー」と呼ばれるもので、そのウェブサイト側にエラーの原因があることを示しています。自サイトのエラーとして出た場合はサーバーの設定から確認をすると良いでしょう。500番台の主なエラー内容とその対策を以下の表にまとめてみました。

番号 名称 意味と対策
500 Internal Server Error
サーバー内部エラー
  • ブラウザからのリクエストを適切に処理できない場合に表示されます。

ブラウザ変更、Cookieやキャッシュを削除してみてください。

501 Not Implemented
未実装エラー
  • サーバーがリクエストに満たすのに必要な機能をサポートしていない。

ウェブサーバー側の異常ですので、サイトオーナーを通じて原則としてはホスティング会社に連絡して修正してもらいます。

502 Bad Gateway
不正なゲートウェイ
  • ゲートウェイ・プロキシサーバは不正なリクエストを受け取り、これを拒否しました。

通常ネットワーク側またはサーバー側の異常ですが、お客様側で発生する場合もある。ページを再読み込みを試してみてダメならdownforeveryoneorjustme.comで本当にそのウェブサイトが落ちているか確認しましょう。サイトが落ちていないようなら閲覧者側に影響があるかもしれません。

503 Service Unavailable
サーバー過負荷
  • そのサイトにアクセスが集中していて、一時的にページを表示できない時に出るメッセージです。

時間をおいてからアクセスしてみましょう。

504 Gateway Timeout
内部サーバーエラー
  • ウェブサイト側のサーバーからの適切なレスポンスがなくタイムアウトした状態です。

少し時間を空けて(1分~)ページを再読み込みしてみましょう。502同様、downforeveryoneorjustme.comで本当にそのウェブサイトが落ちているか確認しましょう。またはプロキシサービスをご利用の場合は、504エラーが発生することがありますので無効にしてみましょう。

505 HTTP Version
Not Supported
未サポート
  • クライアント(おもにWebブラウザ)からサーバに送信されたHTTPプロトコルのバージョンを、サーバがサポートしていない場合に発生

HTTPヘッダーの確認サイトで、エラーが発生したWebページのURLを入力し、リクエストを確認する。リクエストが正常(101)ならWebブラウザを最新バージョンにアップデートする。

まとめ

今回は、1XX~3XXのトラブルではないHTTPステータスコード、403、404、500、503など代表的なHTTPエラーコードについてご紹介しました。このほかのよくあるエラーとして、フィッシングや悪意あるコンテンツに対する警告、SSL証明書エラーを目にすることがよくあります。共にブラウザ側のセキュリティ機能で、前者は悪意あるWebサイトやコンテンツに対しての警告で、後者はWebサイトが利用するSSL証明書を確認できない場合の警告です。ブラウザを通して様々な状況を伝えてくれるわけですが、その意味を把握できないと対応が遅れてしまいます。当記事で紹介した内容を把握していると、何が原因でエラーが起きているのかすぐに判断することができるでしょう。あなたのホームページ、お目当てのウェブサイトが表示されない場合など、参考にしてみてください。