概念

301 Redirect恒久的リダイレクト

URLを恒久的に別のURLへ移したことを、訪問者と検索エンジンに伝える仕組みです。ページ移転やドメイン変更で、旧URLへの訪問を対応する新URLへ案内するときに使います。

30秒で理解

301 Redirect(301リダイレクト)は、「このURLは恒久的に別のURLへ移りました」と伝えるHTTPレスポンスです。ブラウザーはレスポンスの Location に書かれた新URLを開き、検索エンジンも新URLを代表として扱うシグナルに利用します。

旧ページを削除して終わりにすると、ブックマークや外部サイトのリンクから来た人が404に到着します。ページの移転先があるなら、旧URLから対応する新URLへ直接301を返します。

引っ越し先を知らせる転居届に似ています。旧住所に来た人へ新住所を伝えられますが、関係のない住所へ転送すると、受け取る人は迷います。

どういう仕組みか

サーバーが旧URLへのリクエストを受け、301 と Location ヘッダーを返します。訪問者はその新URLへ移動します。検索エンジンにとっては、旧URLから新URLへ移ったことを示す強いシグナルです。

状態返すもの使う場面
恒久的に移転301 と新URLURL変更、HTTPS化、ドメイン変更、ページ統合
一時的に移転302 など一時的なキャンペーンやメンテナンス
移転先がない404 または 410削除済みで、対応する代替ページもない

301と302は「検索結果にどのURLを残したいか」で使い分けます。元のURLへ戻す予定があるのに301を使うと、恒久移転として処理される可能性があります。

どこで見えるか

設定したルールは、ブラウザーの画面だけではなく、HTTPレスポンスとして確認します。まず1本の旧URLで、最終的に意図した新URLへ到着するかを調べます。

確認したいこと開く場所・コマンド合格の状態
ステータスと転送先curl -I https://example.com/old-path301 と正しい Location が返る
転送の連鎖curl -IL https://example.com/old-path最終URLへ少ない回数で到着する
ページの登録状態Search Console → URL検査新URLを検査し、ライブテストで取得できる
大量移転の漏れURL対応表とサーバーログ旧URLごとに対応先があり、404が増えていない

curl -I は本文を取得せず、レスポンスヘッダーを確認するコマンドです。Location の値が別の旧URLになっていないかも、同時に見ます。

よくある誤解

301は「どんな旧URLでもトップページへ送るルール」ではありません。旧ページと新ページの内容や目的が対応していることが前提です。対応しないページを大量にトップページへ送ると、ユーザーを迷わせ、検索エンジンからソフト404とみなされる場合があります。

301はcanonicalタグやnoindexの代用品ではありません。旧URLを残したまま代表URLを示したいならcanonical、検索結果への登録を止めたいならnoindexなど、目的に合う仕組みを選びます。旧URLを恒久的に廃止して新URLへ移すときが301です。

また、301を設定しただけで新ページの内容や品質が引き継がれるわけではありません。移転先が本当に旧ページの受け皿になっているかを確認します。

これを踏まえて何をするか

ページ移転を始めるときは、先にURL対応表を1行ずつ作ります。対応先が決まらない旧URLは、無理に301へ入れません。

順番開く場所その場で行うこと
1新旧URLの一覧表旧URLと、内容が対応する新URLを1対1で記入する
2サーバー設定またはCMSのリダイレクト画面旧URLから新URLへ、サーバー側の301を登録する
3ターミナルcurl -IL で旧URLを確認し、最終URLへ直接届くか見る
4新ページのHTMLcanonical、内部リンク、robots設定が新URLになっているか確認する
5Search Console → URL検査新URLを検査し、取得できることを確認する。ドメイン変更なら旧サイトの「アドレス変更」も開く

最後に、サイト内リンクと広告のリンクを新URLへ置き換えます。301は残したままでも、毎回転送を発生させるので、更新できるリンクを旧URLのままにしません。ドメインやパスの移転なら、まず対応表の1行目に旧URLと新URLを入力し、その1行を使ってテスト用の301を作るところから始めます。

注意点

移転直後は検索結果の表示が一時的に揺れることがあります。確認を急いで301を外すのではなく、旧URLから新URLへの到達、404、検索での登録状態を順に追います。Googleはサイト移転のリダイレクトを、一般に少なくとも1年以上保持するよう案内しています。

リダイレクトチェーンを作らないでください。旧URL → 中間URL → 新URLではなく、旧URL → 最終URLにします。設定変更後は curl -IL の出力を見て、Location が別の転送先を指していないことを確認します。

一次情報

普遍的な内容なので、定期の見直し対象にしていません。