410 Gone
410 Gone は、要求されたリソースがサーバーから恒久的に削除され、再び戻る見込みがほとんどないことを示す HTTP 4xx ステータスコードです。意味としては 404 Not Found に似ていますが、404 は存在しない状態の永続性が不明な場合に使用されるのに対し、410 は意図的かつ恒久的な削除であることをより明確に示します。
410 Gone は、リソースがサーバーから恒久的に削除されたことを示す HTTP のクライアントエラーコードです。
404 Not Found がその不在が恒久的かどうかを示さないのに対し、410 はそのリソースが意図的に削除されたことを明確に伝えます。
Google の扱いでは、404 と 410 の実務上の違いは非常に小さく、John Mueller は SEO の観点ではどちらか一方を優先すべき理由を見つけるのは難しいと述べています。
410 はインデックスからの削除をやや速く示すシグナルとして機能しますが、Google はそれでも 410 ページを長期間再クロールし続けます。
削除が恒久的であると確信できる場合は 410 を使い、一時的または不確実な場合は 404 を使います。
概要
410 Gone は HTTP の 4xx クライアントエラーのステータスコードで、要求されたリソースがオリジンサーバーで現在は提供されておらず、この状態が恒久的である可能性が高いことを示します。MDN のドキュメントによると、クライアントは 410 応答を返すリソースに対して要求を繰り返すべきではなく、サイト運営者はそのようなコードを指すリンクを削除または置き換えるよう推奨されています。410 応答はデフォルトでキャッシュ可能です。
410 の本質は、恒久性を明示的に伝える点にあります。404 Not Found が不在の状態が一時的か恒久的かを明示しないのに対し、410 はそのリソースが意図的に削除され、今後戻らないことを明確に示します。そのため、期限切れのキャンペーンページ、恒久的に削除されたコンテンツ、非推奨となった API エンドポイントなど、二度と戻らないことが確実なケースに適しています。
404 との違い
404 と 410 はどちらも 4xx のクライアントエラーで、どちらも「そのリソースは提供されていない」ことを意味しますが、示す意図は異なります。MDN は、存在しない理由が一時的か恒久的か分からない場合は 404 を、恒久的な削除が確実な場合は 410 をサーバー運営者に推奨しています。
項目 | 404 Not Found | 410 Gone |
|---|---|---|
意味 | リソースが見つからない(恒久性は不明) | リソースが恒久的に削除された |
恒久性のシグナル | 曖昧(一時的または恒久的の可能性がある) | 明示的かつ恒久的 |
推奨される状況 | 不在の理由や期間が不明な場合 | 意図的な恒久削除であることが確実な場合 |
Google のインデックス削除 | 猶予期間後に削除される | わずかに速い削除シグナル |
再クロール | 長期間続く | 長期間続く(410でも止まらない) |
SEOの観点では、最も重要なのは、Googleが実際にこの2つをどのように扱うかにほとんど違いがないという点です。GoogleのJohn Muellerは、404と410の扱いの差は非常に小さいため、SEO目的でどちらかを優先したいと思えるケースを考えるのは難しいと述べています。繰り返しクロールされる件についても、これらは問題を引き起こさず、そのままにしておけばよいと彼は述べています。長期間にわたって再クロールされることがあり、410を返してもその点は変わらないそうです。
とはいえ、Googleの担当者は一貫して、410のほうがページをインデックスからやや早く削除すると述べています。410は、サイト運営者がそのページが削除されたことを意図的に宣言していると解釈されるため、404のように猶予期間を設けて保護するのではなく、Googleはより即座にエラーとして扱う傾向があります。ただし実際には、この違いはほとんどなく、410を返してもGoogleはそのURLを長期間にわたって再クロールし続けます。
使用例
期限切れで、もはや有効ではない販促ページやイベントページを恒久的に終了する。
重複コンテンツや低品質コンテンツを意図的かつ恒久的に削除し、すばやくインデックスから除外したい場合。
廃止されたAPIエンドポイントや販売終了した商品ページを明示的に削除する。
代替ページがなく、301リダイレクトを設定するのが不適切で、かつ非公開が恒久的であることが確実な場合。レスポンス例
GET /promotions/summer-2023 HTTP/1.1 Host: example.com HTTP/1.1 410 Gone Content-Type: text/html
nginx 設定例location = /promotions/summer-2023 { return 410; }
実装チェックリスト410 は、削除が確実に恒久的であるURLにのみ適用し、不確実な場合は 404 を使用する。
代替ページがある場合は、410 や 404 よりも 301 の恒久的リダイレクトを優先する。
410 を返す
内部リンクを削除するか、有効なリンク先に置き換える。インデックス削除の速度に過度にこだわらないこと。Googleの扱いでは、404との違いは最小限です。
Do not obsess over index-removal speed; in Google's handling, the difference from 404 is minimal.
410ページでも、ユーザーの離脱を減らすために、案内やナビゲーションを提供してください。