WebブラウザがサーバーにリクエストするたびにHTTPステータスコードが返されます。サイト運用やSEO改善をするうえで、主要なステータスコードの意味を理解しておくことは欠かせません。
ステータスコードの分類
| コード範囲 | 分類 | 意味 |
|---|---|---|
| 1xx | 情報レスポンス | 処理継続中 |
| 2xx | 成功 | リクエスト成功 |
| 3xx | リダイレクト | 別URLへの転送 |
| 4xx | クライアントエラー | リクエスト側の問題 |
| 5xx | サーバーエラー | サーバー側の問題 |
よく使うステータスコード
200 OK
リクエストが正常に処理されました。通常のページ表示やAPIレスポンスで返されます。
301 Moved Permanently(恒久的リダイレクト)
URLが恒久的に移動しました。SEO評価(リンクの評価)も新URLに引き継がれます。HTTPからHTTPS、wwwあり→なしの統一、旧URLから新URLへの恒久移転に使います。
302 Found(一時的リダイレクト)
URLが一時的に移動しました。メンテナンスページへの一時転送など、元のURLに戻す予定がある場合に使います。SEO評価は引き継がれません。
403 Forbidden
アクセスは届いているが、権限がないため拒否されました。.htaccess のIP制限やディレクトリ保護が原因であることが多いです。
404 Not Found
リクエストされたURLが存在しません。削除したページ、URLの変更後に古いURLが残っている場合などに発生します。
SEOの観点: 404ページが大量に発生している場合、Googleがクロールを無駄に消費します。移転したページには必ず301リダイレクトを設定してください。
500 Internal Server Error
サーバー内部でエラーが発生しました。PHPのコードエラー、.htaccess の記述ミス、パーミッション設定ミスなどが原因です。
503 Service Unavailable
サーバーが一時的に利用できません。メンテナンス中やサーバー過負荷時に返します。SEOクローラーに「一時的な問題」として伝えるため、503とともにRetry-Afterヘッダーを返すのが正しい実装です。
リダイレクトチェーンに注意
複数の301リダイレクトが連鎖すると(例: A→B→C→D)、ユーザーの体感速度が低下し、SEO評価の引き継ぎも弱まります。リダイレクトは1ホップに収めるのが理想です。
HTTPステータス・リダイレクトチェッカーでは、URLを入力するだけでリダイレクトチェーン全体を可視化できます。