HTTPステータスコードはサイトの状態を示す信号である
HTTPステータスコードは、ブラウザや検索エンジンがページへアクセスしたときに、サーバーが返す3桁の応答コードです。
ページが正常に表示されれば 200 OK、存在しないページなら 404 Not Found、別URLへ恒久的に移転していれば 301 Moved Permanently が返ります。
サイト運用では、すべてのコードを暗記する必要はありません。重要なのは、そのコードが正常に返っているのか、別URLへ転送しているのか、アクセス側で問題が起きているのか、サーバー側で失敗しているのかを読み分けることです。
MDNやRFC 9110でも、HTTPステータスコードは大きく 2xx 成功、3xx リダイレクト、4xx クライアントエラー、5xx サーバーエラーに分類されています。まずはこの大枠で見ると、原因の切り分けがしやすくなります。
2xxと3xxは正常表示と転送を見る
2xx は、リクエストが正常に処理されたことを示します。サイト運用で最も基本になるのは 200 OK です。
| コード | 意味 | 運用上の見方 |
|---|---|---|
| 200 OK | 正常表示 | 公開ページが問題なく取得できている |
| 201 Created | 作成成功 | APIで新規作成が成功したときに多い |
| 204 No Content | 本文なしで成功 | 削除や更新APIなどで使われることがある |
SEOで特に重要なのは 200 OK です。公開したいページ、sitemap.xml、robots.txt、CSS、画像などがきちんと 200 を返しているかは、基本的な確認項目です。
3xx は、別のURLへ誘導するためのコードです。サイト移転、URL変更、正規URLへの統一などで使われます。
| コード | 意味 | 運用上の見方 |
|---|---|---|
| 301 Moved Permanently | 恒久転送 | URL変更時のSEO引き継ぎで重要 |
| 302 Found | 一時転送 | 一時的な誘導として使う |
| 304 Not Modified | 未更新 | キャッシュ利用時に返る |
SEOで特に見るべきなのは 301 です。古いURLから新しいURLへ恒久的に移す場合、301リダイレクトが適切に設定されているかが重要になります。
ただし、301があれば何でもよいわけではありません。301が何段も連鎖していたり、AからB、BからAへ戻るようなループになっていたりすると、ユーザーにも検索エンジンにも悪い状態になります。
4xxはURL・権限・リンク切れを見る
4xx は、アクセスした側のリクエストに問題がある場合に返ります。ただし実務上は、URLが間違っている、ページが消えている、権限で拒否されている、といった見方をします。
| コード | 意味 | 運用上の見方 |
|---|---|---|
| 400 Bad Request | リクエスト不正 | URLや送信内容が壊れている可能性 |
| 401 Unauthorized | 認証が必要 | ログインや認証が必要 |
| 403 Forbidden | アクセス拒否 | 権限、WAF、設定ミスを確認 |
| 404 Not Found | ページ不存在 | 削除済み、URLミス、リンク切れ |
| 405 Method Not Allowed | メソッド不許可 | GET/POSTなどの不一致 |
| 429 Too Many Requests | リクエスト過多 | レート制限、過剰アクセス |
SEO運用で特に見るべきなのは 404 です。404そのものがすべて悪いわけではありません。削除したページが404になること自体は自然です。
問題になるのは、内部リンクやsitemap.xmlから大量に404が出ている状態です。この場合、検索エンジンに存在しないURLを案内していることになり、サイト構造の管理ミスとして確認が必要になります。
また、403 も要注意です。人間のブラウザでは見えているのに、検索エンジンや外部チェックツールからは403になる場合、WAF、Basic認証、Cloudflare設定、アクセス制御などが影響している可能性があります。
5xxはサーバー側の失敗として見る
5xx は、サーバー側で正常に処理できなかったことを示します。ユーザーにとっては表示失敗であり、検索エンジンにとってもクロール失敗になります。
| コード | 意味 | 運用上の見方 |
|---|---|---|
| 500 Internal Server Error | 汎用サーバーエラー | アプリ、設定、実行環境の異常 |
| 502 Bad Gateway | 上流サーバー異常 | プロキシや上流サーバーの問題 |
| 503 Service Unavailable | 一時停止 | メンテナンス、過負荷 |
| 504 Gateway Timeout | タイムアウト | 上流サーバーから応答がない |
500 が出ている場合、ページ単位の問題ではなく、サーバー、アプリケーション、設定ファイル、デプロイ内容を確認する必要があります。
503 は一時的な停止を示すため、メンテナンスや過負荷で使われることがあります。短時間なら問題になりにくい場合もありますが、長く続けばユーザーにも検索エンジンにも影響します。
SEOでは、5xxが長時間続く状態を避けることが重要です。検索エンジンが何度もクロールに失敗すると、ページの評価以前に、取得できないサイトとして扱われる可能性があります。
Cloudflare利用時はCloudflareとoriginの間を見る
Cloudflareを使っている場合、標準的なHTTPステータスコードとは別に、Cloudflare側のエラーコードを見ることがあります。
これは、ブラウザ、Cloudflare、オリジンサーバーのどこで問題が起きているかを切り分けるために重要です。
| コード | 意味 | 運用上の見方 |
|---|---|---|
| 520 | Webサーバーが不明なエラーを返した | 原因が広いためログ確認が必要 |
| 521 | Webサーバーが停止している | origin停止、接続拒否を確認 |
| 522 | 接続タイムアウト | Cloudflareからoriginへ接続できない |
| 523 | originに到達できない | DNS、ネットワーク、origin到達性を確認 |
| 524 | タイムアウト発生 | 接続後、originの応答が遅い |
| 525 | SSL handshake failed | TLS設定を確認 |
| 526 | invalid SSL certificate | origin証明書を確認 |
| 530 | Cloudflare系エラー | 詳細メッセージと設定確認が必要 |
Cloudflare公式ドキュメントでも、520、521、522、523、524、525、526、530 は個別に整理されています。同じ5xxでも、単にサーバーが壊れたというより、Cloudflareとoriginの間で何が起きているかを見る必要があります。
特に 522 や 524 は、どちらもタイムアウトに見えますが意味が違います。522 はCloudflareがoriginへ接続できない状態、524 は接続後にoriginの応答が遅い状態として見ます。
Cloudflare Pagesのような静的ホスティングでは、通常のoriginサーバー運用とは見方が少し違います。それでも、Cloudflare側のエラー画面やステータス、管理画面、デプロイ状況を合わせて確認することが大切です。
SEO・サイト運用で優先的に見るコード
サイト運用で毎回すべてのコードを細かく見る必要はありません。まずは、次のコードを重点的に確認すると実務では十分役に立ちます。
| コード | 意味 | 重要度 |
|---|---|---|
| 200 | 正常表示 | 超重要 |
| 301 | URL移転 | 超重要 |
| 403 | アクセス拒否 | 重要 |
| 404 | ページ不存在 | 重要 |
| 500 | サーバー障害 | 危険 |
| 503 | 一時停止 | 重要 |
| 522 | Cloudflare接続タイムアウト | 重要 |
| 524 | Cloudflare応答タイムアウト | 重要 |
| 530 | Cloudflare系異常 | 構成確認 |
静的サイト、Cloudflare Pages、独自ドメイン、sitemap.xml、robots.txt を使っている構成では、公開ページが200を返しているか、URL変更後の301が正しくつながっているか、内部リンクやsitemapに404が混ざっていないかを確認します。
また、sitemap.xml と robots.txt が取得できるかも重要です。SEOでは、本文の品質やタイトルだけでなく、検索エンジンがページへ正常に到達できることが前提になります。
どれだけ良い記事を書いても、sitemapが取得できない、主要ページが404になる、Cloudflareで5xxが出る、robots.txtが見えない、という状態では評価以前の問題になります。
まとめ
HTTPステータスコードは、サイトの状態を読むための信号です。
200 は正常表示、301 は恒久転送、404 はページ不存在、500 や 503 はサーバー側の問題を示します。Cloudflareを使っている場合は、520、521、522、524、530 のようなCloudflare系コードも、originとの接続や応答状態を見るために重要です。
サイト運用では、コードを暗記するよりも、どの層で問題が起きているかを切り分けることが大切です。公開ページは200を返しているか。移転URLは301で正しくつながっているか。404が増えていないか。5xxが出ていないか。sitemap.xmlとrobots.txtが取得できるか。
この確認を定期的に行うだけで、SEO以前の技術的な取りこぼしをかなり減らせます。
