HTTPステータスコードは、Webサイトの通信状態を示す重要な指標です。オウンドメディア担当者にとって、これらのステータスコードを正確に理解し、適切に対応することは、サイトの健全性維持とSEO最適化のために欠かせません。
この記事では、HTTPステータスコードの基本的な知識から、代表的なコードの紹介、特に重要なコードの対応方法、さらにはこれらのコードの確認方法まで、幅広く解説します。
HTTPステータスコードの概要と、各コードの意味を知りたい方はぜひご覧ください。
HTTPステータスコードとは?
インターネットでWebサイトにアクセスする時、「ページが見つかりません」や「サーバーエラー」といったメッセージを見かけたことがあるのではないでしょうか。これらはHTTPステータスコードによるものです。
Webサイトへの訪問がスムーズに進まず、何らかの問題が発生したことを示すこれらのメッセージは、サーバーから送られる3桁の数字で表されます。この数字はWeb通信の基本的な部分であり、それぞれが特定の意味を持っています。
まずは、HTTPの基本と、ステータスコードが持つ役割について解説します。
HTTPの基礎知識
Webページを閲覧する際、私たちの使うパソコンやスマートフォンのブラウザは、バックグラウンドでサーバーとさまざまなデータをやり取りしています。このデータ交換のプロセスに使われるのがHTTP(HyperText Transfer Protocol)です。
Web上で文書や画像などのリソースにアクセスするために、ブラウザ(クライアント)がサーバーにリクエストを送り、サーバーがそれに対してレスポンスを返します。このやり取りの結果がHTTPステータスコードとして3桁の数字で示されるのです。
HTTPリクエスト
Webサーバーに対して特定の動作を要求するために、クライアント(たとえば、ブラウザ)から送信されるのがHTTPリクエストです。HTTPリクエストには通常、次のような要素が含まれます。
- リクエストライン:
ここには使用するHTTPメソッド、リクエストされるリソースのURL、使用するHTTPのバージョンが含まれます。 - ヘッダー:
ブラウザの種類や受け入れ可能なコンテンツタイプ、認証情報など、リクエストに関する追加情報が含まれます。 - メッセージボディ:
POSTやPUTメソッド(後述)でデータを送信する際、この部分に入力内容や送信する値が含まれます。
HTTPメソッド
HTTPメソッドは、リクエストがサーバーに対してどのようなアクションを求めているのかを定義します。一般的なHTTPメソッドには以下があります。
GET |
サーバー上のファイル本体を取得する |
HEAD |
サーバー上のファイルに関連するヘッダー情報のみを取得する |
POST |
サーバー上のプログラムにデータを送信する |
PUT |
サーバー上のファイルを置き換える |
DELETE |
サーバー上の特定のファイルを削除する |
OPTIONS |
サーバーがサポートしているメソッド一覧を確認する |
CONNECT |
プロキシにトンネル接続を要求する |
TRACE |
ネットワーク経路を調査する |
HTTPレスポンス
HTTPレスポンスは、ユーザーがWebサイトを閲覧したいとリクエスト(クリック)した際に、サーバーが応答として送り返すメッセージのことです。そのレスポンスの結果、私たちはWebサイトを見ることができます。レスポンスには以下の要素が含まれます。
- ステータスライン:
この部分には、使用されているHTTPプロトコルのバージョン、ステータスコード、およびその簡潔な説明が含まれます。ステータスコードは、リクエストが成功したか、失敗したか、あるいはほかのアクションが必要かを示します。 - ヘッダー:
ここには、レスポンスに関連する追加情報が含まれます。たとえば、コンテンツのタイプ(HTML、画像など)、データの最終更新日時、キャッシュポリシーなど、サーバーがクライアントに伝えるさまざまな指示や情報が記載されています。 - メッセージボディ(オプション):
ボディ部分には、リクエストされたリソースの実際のコンテンツ情報が格納されます。
ステータスコードの役割と5つのクラス
HTTPステータスコードは、インターネットを通じた通信の結果を示す重要な手段です。これらのコードは、Webページのリクエストがどのように処理されたかを具体的に表すため、Webサイトの問題を診断する際に非常に役立ちます。
たとえば、Webページが正常に読み込まれた場合、「200 OK」が表示されます。一方、ページが見つからない場合には「404 Not Found」と表示されます。
ステータスコードは、「情報レスポンス」「成功レスポンス」「リダイレクション」「クライアントエラー」「サーバーエラー」の大きく5つのクラスに分類されます。
情報レスポンス(1xx) |
情報提供を目的とし、リクエストが受け取られて処理されていることを示す |
成功レスポンス(2xx) |
リクエストが成功したことを示す |
リダイレクション(3xx) |
リクエストされたリソースが別の位置に移動していることを示す |
クライアントエラー(4xx) |
リクエストに問題があることを示す |
サーバーエラー(5xx) |
サーバーがリクエストを処理するうえで問題が発生したことを示す |
各クラスとその中のステータスコードは、Webブラウザとサーバー間のやり取りで何が起こっているのかを明確にし、サイト管理者にとって有益な情報を提供します。ステータスコードを理解することによって、Webサイトの問題を迅速に特定し、適切に対処することが可能になります。
ステータスコード一覧
ここからは、それぞれのステータスコードについてより詳しく解説します。
1xx(情報-informational- レスポンス)ステータスコード
1xxクラスのステータスコードは、プロセスが継続していることを示します。通常はユーザーに直接表示されることはありませんが、知識として覚えておくとよいでしょう。
100 Continue
「リクエスト継続可能」を意味します。クライアントがリクエストのヘッダーをサーバーに送信した後、サーバーがリクエストを継続できることを示します。リクエストが完了している場合は、そのレスポンスは無視しても大丈夫です。
101 Switching Protocols
「プロトコルの切り替え」の意味です。クライアントからのリクエストに応じて、サーバー側が通信プロトコルを変更することを指します。サーバーはこのリクエストに対して、切り替え先のプロトコルを示します。
102 Processing
「処理中」を意味しています。リクエスト処理が継続して行われていることを示します。
103 Early Hints
「早期のヒント」という意味で、サーバーが残りのレスポンスを準備している間、リンクヘッダーを通じてクライアントに予想されるヘッダーを伝達するために使用されます。
2xx(成功-Success-レスポンス)ステータスコード
2xxのステータスコードは、クライアントからのリクエストが正常に受理され、サーバーがそれに応じた結果を返していることを示します。
200 OK
「成功」を意味するレスポンスです。リクエストが成功したことを示し、Webページが正しく表示された場合、通常はこのレスポンスが表示されます。
201 Created
「作成」という意味のこのレスポンスは、リクエストが成功し、その結果新しいリソースが作成されたことを示します。一般的に、 サーバー上のプログラムにデータを送信する「POST」リクエストや、サーバーのファイルを置き換える一部の 「PUT」リクエストを送信した後のレスポンスとして返されます。
202 Accepted
「受理」を意味します。サーバーがリクエストを受理し、まだ処理が完了していない状態です。
具体的には、大量のデータ分析や長時間の計算、大規模なファイルのアップロードなど、即座に結果を返せないようなタスクの処理が必要な場合にこのステータスコードを使用することがあります。
202は、リクエスト完了となる場合と、完了につながらない場合があります。
203 Non-Authoritative Information
「信頼できない情報」という意味です。成功レスポンスですが、返された情報が元のサーバーからではなく、それ以外の場所から取得された情報を示すレスポンスコードになります。
204 No Content
「内容なし」を意味します。リクエストは成功しましたが、返すべきコンテンツがない場合に使用されます。
たとえば、フォームを送信した後にページを再読み込みしない場合によく見られます。
3xx(リダイレクション-Redirection-)ステータスコード
3xxのステータスコードは、リクエストされたリソースがほかの場所に移動したことを示すために使用されるコードです。そのURLを閲覧しようとすると、設定したURLに自動的に転送されます。これらは、URLの変更やページの統合時に特に重要なコードです。
300 Multiple Choice
「複数の選択」の意味で、リクエストに対して複数のレスポンスがあることを示しています。
301 Moved Permanently
「恒久的な移動」を意味します。301リダイレクトと呼ばれ、リソースが恒久的に新しいURLに移動された時に使用されるコードです。
たとえば、Webサイトをリニューアルする際などに、各ページにリダイレクト設定をし、ページを転送させることができます。
SEOの観点からも、適切に301リダイレクトを使用することは、リンクの価値を新しいURLに引き継ぐうえで非常に重要です。
302 Found
「発見」を意味します。リソースが一時的に異なるURLに移動しているものの、検索エンジンはオリジナルのURLを引き続きインデックスに残しておくべきであることを示します。
たとえば、サイトをリニューアルしている時、元のURLから新しいURLへ一時的にリダイレクトするのに使われ、リニューアルが完了したら元のURLに戻すことができます。
また、サイトが複数の言語に対応している場合、訪問者の国(IPアドレス)に基づいて異なる言語のページにリダイレクトする際にも利用されることがあります。
304 Not Modified
「未更新」の意味です。クライアントが条件付きのリクエストを送った時、リソースへのアクセスが許可されたものの、条件が満たされていなかった場合に返されます。
4xx(クライアントエラー-Client errors-)ステータスコード
4xxクラスのステータスコードは、クライアントからのリクエストに問題があることを示すものです。たとえば、リクエストしたURLに不備があった場合に表示されます。これらのエラーが出た時にはクライアント側で何らかの対処が必要となるので、覚えておくとよいでしょう。
400 Bad Request
「不正リクエスト」を意味し、リクエストが不正であることを示し、サーバーが処理を拒否しています。
パラメータが不足しているか、あるいは不正確であるなど、リクエストの形式が正しくない場合にこのコードが返されることがあります。
401 Unauthorized
「無許可」という意味で、認証が必要なリソースにアクセスしようとしたものの、適切な認証情報が提供されていない場合にこのステータスコードが返されます。これは通常、ログインが必要なページへのアクセスを試みた場合に表示されます。
402 Payment Required
「支払いが必要」を意味します。料金の支払いが必要な状態です。
ただし、このステータスコードは、現在のところ標準的な使用法が確立されておらず、具体的な実装は見られていません。将来のために確保されている比較的珍しいレスポンスコードです。
403 Forbidden
「禁止」という意味のコードです。アクセスが禁止されていることを示します。権限がないコンテンツにアクセスしようとした時にこのコードが表示されることがあります。
404 Not Found
「未検出」を意味します。最もよく見るエラーコードの一つで、リクエストしたリソースがサーバー上に見つからないことを示します。たとえば、リンク切れやタイプミスが原因でこのエラーに遭遇することがあります。
404はそのリソースが見つからないことを意味するだけで、一時的に利用できないのか、それとも完全に削除されたのかは区別しません。サイトのページが永久に削除された場合、より適切なステータスコードは「410 Gone」です。
405 Method Not Allowed
「未許可のメソッド」の意味で、許可されていないHTTPメソッドを使用した場合に使用されます。たとえば、リソースがGETリクエストのみを受け付ける設定の場合、POSTリクエストを送信すると405エラーが返ってきます。
406 Not Acceptable
「不受理」の意味で、リクエストがAcceptヘッダーによって指定された条件に一致するリソースのレスポンスを生成できない場合に返されます。
407 Proxy Authentication Required
「プロキシ認証が必要」という意味です。プロキシサーバーを使用している際に、そのプロキシサーバーに対する認証が必要であることを示します。
プロキシサーバーは、クラアイントとサーバーの間に位置し、インターネット上での中継点のような役割をしています。一般的には企業でセキュリティーのために導入されるものです。プロキシサーバーを介する場合、クライアントからサーバーへのリクエストはまずプロキシサーバーに送られ、その内容をサーバーに送信します。
407が表示された場合、クライアントはプロキシサーバーの認証情報を含むレスポンスを再度送信する必要があります。
408 Request Timeout
「タイムアウト」を意味し、クライアントからのリクエストがサーバーによって期待される時間内に完了しなかった場合に返されるコードです。
409 Conflict
「競合」を意味し、リクエストが現在のサーバーの状態と競合するために完了できないことを示しています。409は、複数の同時編集が原因で発生する場合があります。
410 Gone
「消滅」という意味で、リクエストされたリソースが過去に存在していたが、現在は利用できなくなっており、将来的にも戻る見込みがないことを示します。
404と似ていますが、410はより明確にリソースが永久に削除されたことを示していると言えるでしょう。
429 Too Many Requests
「リクエストが多すぎる」という意味で、クライアントが、許容されている時間内に多すぎるリクエストを送った時にこのステータスコードが返されます。
また、DDos(分散型サービス拒否)攻撃によるサーバーダウンリスクを回避する対策のためにも活用されています。
5xx(サーバーエラー-Server errors-)ステータスコード
5xxのステータスコードは、サーバー側に何らかの問題があることを示しており、クライアントのリクエストが正しくても処理できない状態です。
500 Internal Server Error
「サーバー内部のエラー」を意味するコードです。サーバー側に不明なエラーが発生した時に返される非常に一般的なステータスコードで、原因の特定が難しいとされています。
ソフトウェアやプラグインのインストールの失敗、画像の保存形式、サーバーのアクセス権限の設定ミスなど、考えられる原因を一つずつ検証していく必要があります。
501 Not Implemented
「未実施」を意味し、リクエストされたメソッドはサーバーによって認識されていますが、サーバー側が対応していない時にこのコードが返されます。
502 Bad Gateway
「不正なゲートウェイ」の意味で、ゲートウェイとして動作するサーバーが不正なリクエストを受け取り、拒否したことを示します。
503 Service Unavailable
「サービス利用不可」は、サーバーが一時的にリクエストを処理できない状態であることを示します。メンテナンス中や過負荷時にこのコードが使用されることが多いです。
事前に計画されたメンテナンスの場合は、ユーザーに対してサイトが一時的に利用不可になることをあらかじめ通知しておくとよいでしょう。
一時的な負荷の場合は、時間を置いてからアクセスをする、またはアクセスが少ないと思われる時間帯に接続することで解決します。サーバーのリソースを追加することも方法の一つです。
504 Gateway Timeout
「ゲートウェイタイムアウト」は、サーバーが別のネットワークサーバーからの応答を待っていてタイムアウトした場合に返されます。
基本的には、大量のデータ送信や一時的に過負荷の原因で発生するエラーです。瞬間的にアクセスが増加したことで、ゲートウェイやプロキシが処理できないケースもあります。その場合は時間を置いてからアクセスをする、またはアクセスが少ないと思われる時間帯に接続することで解決するでしょう。
また、一時的なDNSエラーの可能性もあります。DNSエラーとは、ドメイン名とIPアドレスとのひも付けがうまくされていない状態のことです。 インターネットに接続されていない場合や、DNSサーバーの不具合などが考えられます。
505 HTTP Version Not Supported
「HTTPバージョンがサポートされていない」ことを意味します。リクエストに使用されたHTTPプロトコルのバージョンをサーバーがサポートしていない状態です。
この場合クライアントは、サポートされているバージョンを使用してリクエストを再試行する必要があります。
507 Insufficient Storage
「ストレージ不足」を意味し、サーバーがリクエストを処理するために必要なストレージを確保できない状態です。
511 Network Authentication Required
「ネットワーク認証が必要」という意味で、クライアントがネットワークへのアクセスを得るために認証を必要とすることを示しています。たとえば、ホテルや空港のWi-Fiなどでよく見られます。
オウンドメディア担当者が知っておきたい、HTTPステータスコードに対する対応
オウンドメディアを運営するうえで、HTTPステータスコードの適切な理解と対応は、SEOの観点からも非常に重要です。ここでは、オウンドメディア担当者が最低限知っておきたい、特に重要なステータスコードの対応方法について解説します。
301リダイレクトと302リダイレクトの違い
リダイレクトは、あるURLにアクセスしたユーザーを自動的に別のURLへ転送する処理のことです。301リダイレクトと302リダイレクトは、サーバー側で設定されます。
301リダイレクト
301リダイレクトはページが恒久的に新しいURLに移動したことを意味します。検索エンジンに対して、旧URLのリンク価値やトラフィックを新URLに完全に引き継ぐべきだと指示する重要なコードです。
この場合、元のURLの評価が新しいURLにも共有される点がポイントです。特にサイト構造の変更やドメインの移行時に重要で、適切に使用するとSEOにも適切な方法になります。
302リダイレクト
対照的に、302リダイレクトはページの移動が一時的であることを示します。旧URLの価値は保持され、新URLへは一時的にトラフィックが送られます。
たとえば、プロモーションやA/Bテスト、サイトのリニューアルやメンテナンスなど、一時的なページ変更に使用されます。この場合、元のURLの評価は新しいURLには共有されず、旧URLのSEO評価が失われるリスクがあります。
404 Not Foundページを用意する
存在しないページへのアクセスが試みられた際に表示される404 Not Foundは、訪問者にとってストレスの原因となります。
カスタム404ページを用意することで、訪問者に有用な情報を提供し、サイト内での追加アクションを促すことができます。エラーメッセージが分かりやすく、ホームページへのリンクやサイト内検索機能、人気コンテンツへのリンクを設置することで、ユーザーの利便性を向上させ、サイトからの離脱を防ぐことができます。
ただし、404エラーが頻繁に発生すると、検索エンジンからサイトが整備されていない質の低いサイトとみなされ、検索結果で上位に表示されることが難しくなる可能性もあります。リンク切れやURLの間違いで404エラーが発生していないか、定期的にチェックするとよいでしょう。
ソフト404エラーの対応法
ソフト404は、実際にはページが存在しないにもかかわらず、サーバーが200 OKステータスコードを返してしまう状態です。これを解決するには、存在しないページへのリンクを削除するか、正しい404ステータスコードを返すようにサーバー設定を変更する必要があります。
また、CMSを使用している場合は、存在しないページへのリクエストに適切な404ステータスコードを返すように設定を調整することが重要です。これにより、検索エンジンが不適切なページをインデックス化するのを防ぎ、WebサイトのSEOパフォーマンスを維持できます。
HTTPステータスコードを確認するには?
HTTPステータスコードを正確に把握し、適切に対応するために、HTTPステータスコードを確認する方法を2つ紹介します。
Google Chromeのデベロッパーツールで確認する
Google Chromeのデベロッパーツールは、WebページのHTTPステータスコードを簡単に確認するための便利なツールです。以下の手順で確認できます。
1. デベロッパーツールを開く
Google Chromeを開いて、[F12]キーを押すか、「option+⌘+i」のショートカットを使ってデベロッパーツールを起動します。
2. 確認したいWebページにアクセス
デベロッパーツールを開いた状態で、確認したいWebページにアクセスします。
3. Networkタブを選択
デベロッパーツールの上部にあるタブから「Network」を選択します。
4. Statusを確認
Networkタブには、ページに関連するすべてのリクエストが表示されます。各リクエストの隣には、HTTPステータスコードが表示されます。
Google Search Consoleで確認する
Google Search Consoleは、Webサイトの検索パフォーマンスを分析し、Webページの健全性を確認するのに適したツールです。
Google Search Consoleのカバレッジレポートでは、300番台、400番台、500番台のステータスコードが確認できます。
1. Google Search Consoleにアクセス
Google Search Consoleにログインします。アカウントがない場合は、Googleアカウントでサインアップする必要があります。
2. カバレッジレポートを選択
ダッシュボードの左側のメニューから「カバレッジ」レポートを選択します。
3. ステータスコードを確認
カバレッジレポートでは、300番台、400番台、500番台などのHTTPステータスコードを含むさまざまな問題を確認できます。
まとめ:HTTPステータスコードを理解しておこう
この記事では、Webサイトの管理に不可欠なHTTPステータスコードについて詳しく解説しました。1xxから5xxまでの各ステータスコードの意味、オウンドメディア担当者が知っておくべき重要なコードの対応方法、そして実際にこれらのコードを確認するための効果的なツールの使い方を紹介しました。
適切なステータスコードの理解と対応は、Webサイトのユーザーエクスペリエンスを向上させるだけでなく、SEOにおいても大きな影響を与えます。これらの知識を活用し、サイトの品質を維持し向上させていきましょう。
SEデザインでは、LP制作やオウンドメディアの構築をはじめとしたコンテンツマーケティング支援を行っており、出版業で培ってきた持つ編集力・企画力が強みです。集客やリード育成にお悩みの方は、お気軽にお問い合わせください。