移転したサイトの全URLをトップページへ転送してはいけない
トップページへ送られた古い記事
ある料金解説の記事へのリンクを開くと、移転後サイトのトップページが表示された。リンク元は特定の料金体系を説明する記事として紹介しているのに、新着記事とメニューしか見当たらない。訪問者はサイト内を探し直すしかなく、目的の記事が存在するのかも分からない。全URLをトップページへ送る設定は、古いリンクが持っていた文脈をそこで切ってしまう。
移転時には、旧ドメインのURLをすべて処理したくなる。トップページへ転送すればエラー画面を出さずに済むように見える。しかし旧URLは単なる入口ではない。ページ固有の題名、内容、引用された理由を指し示す住所である。
リダイレクトは対応関係を保存する
リダイレクトの役割は、訪問者を新サイトのどこかへ着地させることではない。旧URLと新URLの間に、同じ内容または十分に近い内容があるという対応関係を保存することにある。たとえば旧サイトの/guide/pricing-2022/に対し、新サイトに改訂版の料金解説/articles/pricing/があるなら、個別に転送する理由が明確である。訪問者は求めた情報へ進め、リンク元の説明も大きく損なわれない。
一方、削除された記事に対応するページがないなら、トップページは代替先にならない。情報量の多いトップページから、古いリンクの目的を復元する手掛かりはほとんど得られない。検索結果や外部サイトから来た人には、目的地ではなく行き止まりを隠した画面になる。運営者側にとっても、失われた旧ページや修復すべきリンクを把握しにくい。
404と410で欠落を正しく示す
対応先が確定しない旧URLは、404を返して残す。404は要求されたページをサーバーが見つけられないことを示す状態であり、URLの誤り、移転漏れ、削除などを区別せずに扱える。訪問者はページが見つからない事実を把握でき、運営者もアクセスログや検索ツールで対象URLを確認できる。必要に応じて記事を復元し、近い内容を新設し、リンク元へ修正を依頼する判断につながる。
ただし、ページを意図的に恒久削除し、今後も復元や代替ページを置く予定がないと確定しているなら、410を返す選択が適切である。410はリソースが削除されたことを明示する応答であり、単に見つからない404とは意味が異なる。404ページにはサイト内検索や主要カテゴリへの導線を置けるが、HTTP応答そのものは404または410として返す必要がある。案内を置くことと、無関係なページへ転送することは別の設計である。
記事ごとの対応表から始める
移転前に、旧URL、新URL、対応の有無、削除状態を並べた対応表を作る。内容を引き継いだ記事は新URLへ転送し、複数の記事を一つの総合ガイドへ統合した場合は、その総合ガイドとの内容上の対応を確認してから転送する。対応先が決められないURLは404とし、恒久削除が確定したものだけを410にする。移転はURLを全部どこかへ送り込む作業ではなく、古い参照が指していた内容をどこまで受け継げるか確かめる作業である。