リダイレクト

HTTP リダイレクトの仕組みと SEO への影響を解説します。301、302、303、307、308 の違い、カノニカル化、PageRank、チェーン、ループ、適切な実装方法を扱います。

このページには証拠シグナルが1件あります

リダイレクトは 3xx ステータスコードと Location ヘッダーでクライアントを別 URL へ送ります。Google は恒久的な 301/308 を強いカノニカルシグナル、一時的な 302/303/307 を弱いシグナルとして扱います。適切な単一リダイレクトで PageRank は失われませんが、チェーンとループは避け、恒久リダイレクトは少なくとも1年間維持します。古い URL を廃止するならリダイレクト、複数 URL を公開したまま1つを優先するならカノニカルタグを使います。

TL;DR — リダイレクトは 3xx ステータスコードと Location ヘッダーを持つ HTTP レスポンスです。SEO より先にプロトコルがあります。Google はコードを2つのカノニカル化区分にまとめます。恒久(301/308)=強いシグナルでシグナルを転送先へ統合し、一時(302/303/307)=弱いシグナルで通常は元に残しますが、長期間の一時リダイレクトは扱いが変わることがあります。307 と 308 は HTTP メソッドと本文を維持し、301 と 302 は維持しない場合があります。サーバー側、CDN/エッジ(私の推奨)、CMS プラグインで実装します。JS と遅延 meta refresh はレンダリングに依存するため弱い選択肢です。適切な単一リダイレクトで PageRank は失われません。実際のリスクはチェーン(避ける)とループ(検索エンジンが無視)です。少なくとも1年間維持してください。また、リダイレクトはカノニカルタグではありません。

プロトコルレベルで見たリダイレクトの実体

リダイレクトのステータスコードには、HTTP メソッドの扱いについて標準化された意味があります。 この主張の根拠 Primary standard or official documentation supporting the adjacent article claim. 対象範囲: Protocol semantics and Search behavior are kept separate; no indexing, ranking, or migration-timing guarantee is inferred. 信頼度: 高 · 検証日: RFC 9110: Redirection 検索向けガイダンスは恒久・一時のシグナルを区別し、移転には直接のサーバー側リダイレクトを推奨しています。 この主張の根拠 Primary standard or official documentation supporting the adjacent article claim. 対象範囲: Protocol semantics and Search behavior are kept separate; no indexing, ranking, or migration-timing guarantee is inferred. 信頼度: 高 · 検証日: Google: Redirects and Search

多くの SEO 記事は、リダイレクトの実体を説明せず「301 は恒久的」と言い始めます。しかし仕組みを理解すると、その後のすべてを説明できます。MDN は、“redirection is triggered by a server sending a special redirect response to a request. Redirect responses have status codes that start with 3, and a Location header holding the URL to redirect to.” (訳) 「リダイレクトは、サーバーがリクエストへ特別なリダイレクトレスポンスを送ることで発生します。レスポンスには 3 で始まるステータスコードと、転送先 URL を保持する Location ヘッダーがあります」と説明しています。

つまりリダイレクトは、301、302、303、307、308 などの 3xx ステータスコードと、転送先を示す Location ヘッダーの組み合わせです。ブラウザやクローラーはレスポンスを読み、Location の URL を再リクエストします。ステータスコードは恒久/一時、メソッド維持の有無という意味を表し、Location はアドレスです。SEO 上のすべての影響は、どの 3xx コードを送るかから生じます。

Ahrefs の 11 Types Of Redirects & Their SEO Impact では、SEO の観点から “A redirect is a way to send people and bots to a new URL when they request the old URL, but the page has changed locations.” (訳) 「ページの場所が変わったとき、古い URL をリクエストした人やボットを新しい URL へ送る方法」と説明しました。

SEO でリダイレクトが重要な理由

Google のリダイレクト文書 は目的を明確に示します。“Redirecting URLs is the practice of resolving an existing URL to a different one, effectively telling your visitors and Google Search that a page has a new location.” (訳) 「URL のリダイレクトとは、既存 URL を別の URL に解決し、ページの場所が変わったことを訪問者と Google 検索へ実質的に伝えること」です。SEO 上の結果は恒久性で明確に分かれます。

  • 恒久リダイレクトでは、検索結果に新しい転送先が表示されます。
  • 一時リダイレクトでは、検索結果に転送元ページが残ります。

リンク価値の側面もあります。Google はリダイレクトの両端を追跡します。“When you redirect a URL, Google keeps track of both the redirect source (the old URL) and the redirect target (the new URL). One of the URLs will be the canonical; which one, depends on signals such as whether the redirect was temporary or permanent.” (訳) 「URL をリダイレクトすると、Google は転送元(古い URL)と転送先(新しい URL)の両方を追跡します。どちらかがカノニカルになり、その選択はリダイレクトが一時的か恒久的かなどのシグナルに依存します」。恒久リダイレクトはシグナルを新しい URL へ前向きに統合し、一時リダイレクトは通常、古い URL に残します。

リダイレクトの全体像:301、302、303、307、308

各コードにはこのサブクラスター内の詳しい解説があります(「次に進む場所」を参照)。概要は次のとおりです。

  • 301(Moved Permanently) — 最も一般的な恒久リダイレクト。強いカノニカル化シグナルで、ランキングシグナルを転送先へ統合します。Google の文書では “Google follows the redirect, and Google systems use the redirect as a strong signal that the redirect target should be processed.” (訳) 「Google はリダイレクトをたどり、転送先を処理すべきという強いシグナルとして使用します」。
  • 302(Found) — 標準的な一時リダイレクト。Google はたどり、“and Google systems use the redirect as a weak signal.” (訳) 「弱いシグナルとして使用します」。ゼロではなく弱いため、長期間残すと 301 のように扱われる場合があります。
  • 303(See Other) — 例外的なコード。一時区分で、Post/Redirect/Get パターン(フォーム送信後、GET で結果ページへ転送)に使われます。SEO ではまれで、Google の扱いは本当に不明確です。機能によって 301 または 302 のように振る舞う可能性があります。
  • 307(Temporary Redirect) — SEO 上は 302 と同じですが、HTTP メソッドと本文を維持します。Google は “equivalent to 302.” (訳) 「302 と同等」と説明します。HSTS を使う HTTPS サイトでは自動的に現れることもあります。
  • 308(Permanent Redirect) — SEO 上は 301 と同じですが、メソッドと本文を維持します。Google は “equivalent to 301.” (訳) 「301 と同等」と説明します。

307/308 が元のメソッドと本文を維持し、301/302 ではクライアントが途中で POST を GET に変えられるという違いは、Google のランキングには影響しません。しかしフォーム送信や API 呼び出しのリダイレクトでは重要です。Google も不用意に選ばないよう、“While Google treats these status codes the same way, keep in mind that they’re semantically different. Use the status code that’s appropriate for the redirect so other clients (for example, e-readers, other search engines) may benefit from it.” (訳) 「Google はこれらを同様に扱いますが、意味は異なります。電子書籍リーダーや他の検索エンジンなどのクライアントにも有益となるよう、用途に適したコードを使ってください」と案内しています(Cheat Sheets タブに比較表があります)。

リダイレクトがクロール、インデックス登録、リンク価値へ与える影響

区分は2つで、違いは1つです。Google の文書では恒久リダイレクト(301、308、即時 meta refresh、JS の location)について、“the indexing pipeline uses the redirect as a signal that the redirect target should be canonical,” (訳) 「インデックス登録パイプラインは、転送先をカノニカルにすべきというシグナルとしてリダイレクトを使う」と説明します。一時リダイレクト(302、303、307、遅延 meta refresh)では、“the indexing pipeline doesn’t use the redirect as a signal that the redirect target should be canonical.” (訳) 「転送先をカノニカルにすべきというシグナルとして使いません」。

この主張の根拠 Google Search uses a permanent redirect as a signal that the redirect target should be canonical; this is not a guarantee that the target will be indexed or rank in a particular way. 対象範囲: redirect interpretation and canonical signals 信頼度: 高 · 検証日: Redirects and Google Search

PageRank が失われるという説は過去のものです。 リダイレクトで「リンク価値の10〜15%を失う」という古い説は、何年も前から正しくありません。Google の Gary Illyes は2016年に、“30x redirects don’t lose PageRank anymore,” (訳) 「30x リダイレクトで PageRank はもう失われない」と述べ、John Mueller は当時すでに新情報ではないと指摘しました。正しく実装した単一リダイレクトは、ページのシグナル価値をほぼすべて渡します。コストはリダイレクト自体ではなく、チェーンとループから生じます。

リダイレクトを維持する期間。 Google のサイト移転ガイダンスは、すべてのシグナルを新 URL へ移すため、“keep the redirects for as long as possible, generally at least 1 year” (訳) 「可能な限り長く、通常は少なくとも1年間維持」するよう案内しています。Gary Illyes は “after 1 y all signals had time to pass on from A to B.” (訳) 「1年後にはすべてのシグナルが A から B へ移る時間があった」と述べました。私は実際に検証しました。古いコンテンツから Ahrefs の4記事へ設定し1年以上経過した 301 を削除すると、“a clear drop in referring domains after I did this,” (訳) 「参照ドメインが明確に減少」しましたが、“not much drop in traffic to these posts.” (訳) 「記事へのトラフィックはあまり減少しません」でした。結論は、“I’m not willing to conclusively say that permanent redirects pass value even after one year, but what Gary said seems to mostly hold true.” (訳) 「恒久リダイレクトが1年後も価値を渡すとは断言できませんが、Gary の発言はおおむね正しいようです」。安全な既定方針は、古いリダイレクトを不用意に削除しないことです。

リダイレクトチェーンとリダイレクトループ

  • リダイレクトチェーンは、リクエスト URL と最終転送先の間に複数のホップがある状態です(ページ1 → ページ2 → ページ3)。Google は最大10ホップをたどり (“By default, Google’s crawlers follow up to 10 redirect hops” (訳) 「既定で Google のクローラーは最大10のリダイレクトホップをたどる」)、現行のサイト移転ガイダンス ではチェーンを避け、不可避なら3以下、5未満にするよう案内しています。10はクローラーの上限、3〜5は実務ガイダンスで、矛盾する制限ではありません。チェーンは遅延を増やし、クロールバジェットを浪費し、分析を曖昧にします。
  • リダイレクトループは自分の尾を食べるチェーンです。URL が自分自身やチェーン内の前の URL へ戻り、解決しません。ブラウザは「リダイレクトが多すぎます」とエラーを出し、検索エンジンは処理を諦めます。John Mueller は次のように述べました。 “a redirect loop is a URL that doesn’t work, so it’s essentially a broken link. We ignore these for search.” (訳) 「リダイレクトループは機能しない URL、つまり実質的に壊れたリンクです。検索では無視します」。ループはクローラーを閉じ込め、サーバー資源も浪費します。

よく知られる5ホップという数値には、過去の担当者ガイダンスもあります。2014年のウェブマスターハングアウトの46:03 で、John Mueller は Googlebot が1回のクロールで最大5つのリダイレクトをたどり、残りがあれば次回に続けると説明しました。2020年にも、1回のクロール試行で最大5ホップと説明しています。これらの歴史的発言は数値の背景を示しますが、現行文書を上書きせず、長いチェーンが特定のスケジュールで必ず再開される保証でもありません。

私の独立した実務観察では、Google は長いチェーンの処理を再開することが多く、私は約5ホップを修正優先度のしきい値にしています。これは観察に基づく運用判断であり、Google プラットフォームの上限ではありません。リダイレクトを管理できるなら、目標は常に直接の1ホップです。

どちらにも下記の専用記事があります。

リダイレクトの実装方法

リダイレクトを置く唯一の「正解」はありません。維持管理できる場所を選びます。

  • サーバー側設定。 Apache の .htaccess、nginx ルール、サーバー側スクリプト。多くのサイトの既定で、最も信頼できます。WordPress では “most WordPress installs will be running Apache and the plugins used for redirecting will actually be editing a website’s .htaccess file” (訳) 「多くの WordPress 環境は Apache で動作し、リダイレクトプラグインは実際にはサイトの .htaccess を編集します」。プラグインは使いやすいフロントエンドです。
  • CDN/エッジ。 Cloudflare ルールや edge worker は、リクエストがオリジンへ届く前に動きます。私の好みは “I typically prefer to have redirects on the edge (CDN-level) over having them on the server.” (訳) 「通常はサーバーよりエッジ(CDN レベル)にリダイレクトを置く」です。ただし多くの人には “always recommend going with what is easiest for you to implement. For many people that is server-level redirects.” (訳) 「最も実装しやすい方法を常に推奨し、多くの場合はサーバーレベル」と案内しています。
  • クライアント側:meta refresh。 <meta http-equiv="refresh"> タグ。即時(0秒)は Google に恒久と解釈され、遅延は一時と解釈されます。サーバーリダイレクトより遅く不格好ですが、唯一の手段になる場合があります。
  • クライアント側:JavaScript。 スクリプトが window.location を設定します。Google は対応できますが、独立して失敗し得るレンダリングが成功した場合だけです。Google は “Only use JavaScript redirects if you can’t do server-side or meta refresh redirects.” (訳) 「サーバー側または meta refresh を使えない場合にのみ JavaScript リダイレクトを使用」と案内しています。恒久リダイレクトの推奨順序は、308/301 → meta refresh 0 → JavaScript → crypto です。

リダイレクトとカノニカルタグの違い

両者は別の問題を解決しますが、常に混同されています。

  • リダイレクト — 古い URL が独自コンテンツの提供を完全に停止すべき場合に使います。今後存在する URL は1つだけです。古いアドレスは転送し、独自ページを返しません。
  • カノニカルタグ — 複数 URL を公開し、個別にアクセス可能なままにする必要がある一方、1つを優先版として Google に扱ってほしい場合に使います。ファセットナビゲーションの派生形、トラッキングパラメータ URL、印刷版などはすべてアクセス可能で、主要版へ rel=canonical を向けます。

Bing も2025年12月の重複コンテンツ記事 で、“Use 301 redirects to consolidate variants into a single preferred URL. Apply canonical tags when multiple versions must remain accessible.” (訳) 「派生版を1つの優先 URL へ統合するには 301 を使い、複数版をアクセス可能に保つ必要がある場合はカノニカルタグを使う」と明確に区別しています。カノニカルのヒントが無視され、本当に統合したいならリダイレクトへ強められますが、その重複 URL が独自コンテンツを提供し続ける必要がない場合に限ります。

Bing について

方向性として Bing は Google と一致し、恒久移転には 301、一時移転には 302 を使います。Bing の Fabrice Canel は次のように述べています。転送先が2日以内に変わる可能性があるなら “preferable to use a 302 redirect if your destination URL may change within 2 days, else 301 is recommended,” (訳) 「302 が望ましく、それ以外は 301 を推奨」。同僚の Frédéric Dubut は「2日」は厳密なしきい値ではなく、“anytime a redirect is temporary… you should use 302s.” (訳) 「リダイレクトが一時的なら常に 302 を使う」と補足しました。転送先がどれほど早く変わるかに沿って表現した同じメンタルモデルです。

次に進む場所:リダイレクトのサブクラスター

このハブは全体地図です。以下の各トピックには、サイドバーに掲載された個別の詳しい解説があります。

個別のリダイレクトコード

  • 301 Redirect — 恒久リダイレクトの標準。シグナルを転送先へ統合する仕組みと使用場面。
  • 302 Redirect — 標準的な一時リダイレクト。ゼロではなく弱いシグナルである理由と、301 の扱いへ変化する場合。
  • 303 Redirect(See Other) — Post/Redirect/Get 用途、SEO でまれな理由、Google の扱いが本当に未定義である理由。
  • 307 Temporary Redirect — SEO 上は 302 と同じですが、HTTP メソッドを厳密に維持し、HSTS やフォーム/API で使われます。
  • 308 Permanent Redirect — SEO 上は 301 と同じですが、HTTP メソッドと本文を厳密に維持します。

直接比較

  • 301 vs. 302 Redirect — 恒久対一時、前向き対後ろ向きのシグナル統合、選び方。
  • 301 vs. 308 Redirect — SEO 上は同じですが、308 は HTTP メソッドと本文を維持します。
  • 302 vs. 307 Redirect — 一時側の同じ比較。SEO 上は同じですが、307 はフォームや API のメソッドと本文を維持します。

クライアント側実装

  • JavaScript Redirects — 最も弱い選択肢である理由、Google のレンダリングパイプラインがサーバー側 301 と異なる扱いをする仕組み、最後の手段として許容できる場面。
  • Meta Refresh Redirect — 即時と遅延、Google の優先順序でサーバー側と JavaScript の間に位置する理由、推奨されない理由。

落とし穴

  • Redirect Chains — 最終 URL へ直接転送すべき理由、10ホップの上限、チェーンによるクロールバジェット浪費。
  • Redirect Loops — 解決しないリダイレクト、検索エンジンが無視する理由、循環を断つ方法。

Google Search Console 内

  • Page with Redirect — この Page Indexing ステータスの意味、エラーではなく正常である理由、対応が必要なまれな場合。
  • Redirect Error — Google が挙げる4原因(チェーンが長すぎる、ループ、URL 最大長、不正/空 URL)と、正常な「Page with redirect」との違い。

このサブクラスターを含む HTTP ステータスコード全体(2xx/3xx/4xx/5xx の各系列とリダイレクト以外のコード)は、/technical-seo/http-status-codes/ のクラスター索引を参照してください。

専門家メモを追加

専門家の引用を固定

新しい人物ですか?まず、 /admin/experts/ → 専門家の引用を固定 から未登録プロフィールを作成してください。

日本語 › コンテンツ

301リダイレクト(恒久的リダイレクト)

301恒久リダイレクトとは何か、PageRankを失わない理由、保持期間、Apache・nginx・WordPress・Cloudflareでの実装、静かにシグナルを失わせる「偽301」の失敗を解説します。

記事を読む →
日本語 › コンテンツ

307一時リダイレクト

307 Temporary Redirectとは何か、302と違ってHTTPメソッドを厳密に保持する仕組み、HSTSや一時移動で現れる場所、GoogleがSEO上どう扱うかを解説します。

記事を読む →
日本語 › コンテンツ

308恒久リダイレクト

308 Permanent Redirectとは何か、301と同じ恒久シグナルを示しながらHTTPメソッドとボディを保持する仕組み、GoogleとBingの扱い、実装時の注意点を解説します。

記事を読む →
日本語 › コンテンツ

301と302リダイレクト:違いと使い分け

301(恒久)と302(一時)リダイレクトの違いを解説します。「301 passes 95%, 302 passes 0%」という古い説が誤りである理由、現在のGoogleの説明、使い分けの判断基準を整理します。 "301 passes 95%, 302 passes 0%" _(翻訳)_「リダイレクトの意図と正規化に関する出典引用の日本語訳(一)」

記事を読む →
日本語 › コンテンツ

301と308リダイレクト:違いとSEOへの影響

301と308はいずれも恒久リダイレクトです。308がHTTPメソッドとリクエストボディの維持を保証する点、GoogleとBingが301と同様に処理する理由、308を選ぶ場面を解説します。

記事を読む →
日本語 › コンテンツ

302と307リダイレクト:違いと使い分け

302と307はいずれも一時的なリダイレクトです。307がHTTPメソッドを変更しないことを保証する差、Googleが同じように扱う理由、HSTSの「phantom 307」を解説します。 "phantom 307." _(翻訳)_「一時的リダイレクトとメソッド保持に関する出典引用の日本語訳(一)」

記事を読む →
日本語 › コンテンツ

302リダイレクト(Found):意味とSEO

302一時リダイレクトの意味、Googleが説明する「弱い」移転先処理シグナル、正当な利用例、ランキングを損なう典型的な誤用を解説します。

記事を読む →
日本語 › コンテンツ

303リダイレクト(See Other)

303 See Otherリダイレクト、その中心となるPost/Redirect/Getパターン、307と異なりGETまたはHEADへ切り替える仕組み、302との差、GoogleとBingに303専用のSEOガイダンスがほとんどない理由を解説します。

記事を読む →