< BACK 黄金時間帯に撮影された、風化した分岐点の看板を、35mmフィルムで浅い被写界深度で撮影したもの

301リダイレクト対302リダイレクト:SEOにおいて実際に重要なのはどちらか

2021年、6ヶ月前に移行した400ページのeコマースサイトの監査を依頼されました。トラフィックが38%低下していて、クライアントは理由を特定できませんでした。移行を担当した開発者は、すべての古いURLに対して302リダイレクトを使用していました。彼は「以前うまくいった」と言っていたからです。サイトのドメインオーソリティは損なわれていません。バックリンクもそのままです。しかしGooglebotは古いページを一時的に移動したものとして扱っており、リンクエクイティが宙ぶらりん状態で、元のURLが戻ってくる可能性を待っていたのです。6ヶ月間そうでした。他の誰かがこの教訓を学ぶのを見るのは苦しいことです。

リダイレクトタイプについての問題点は、リンクをクリックするユーザーにはまったく同じに見えるということです。どちらの場合でもブラウザはAからBに移動します。しかし検索エンジンにとっては、移行を間違えると壊れるほど有意義な違いがあります。

これら2つのリダイレクトコードが実際に意味すること

HTTPプロトコルレベルでは、301はクライアント(ブラウザ、Googlebot、Binbotなど)に対して、リソースが新しい場所に永続的に移動したことを伝えます。302はそれが一時的に移動したことを示します。以上です。仕様レベルではこれが全てのちがいです。permanently moved to a new location. A 302 says it's temporarily moved. That's it. That's the whole difference at the spec level.

しかし、SEOへの下流への影響は興味深いところです。

301リダイレクトを使用すると、Googleは旧URLのシグナル(バックリンク、ページオーソリティ、クロール優先度)を新しいURLに統合します。302の場合、Googleは移動が一時的なものであるため、元のURLをインデックスに保つことになっています。実際のところ、Googleはこの数年でこの扱いについて賢くなり、Googleの公式ドキュメントでも、Googlebot が302からもシグナルを転送する「可能性がある」ことを認めています。ですが「可能性がある」と「最終的には」という言葉に、クライアントの収益を賭けたいとは思いません。Google's own documentation acknowledges that Googlebot "may" transfer signals from 302s too, eventually. But "may" and "eventually" are not words I want to bet a client's revenue on.

リンクエクイティの問題

301からのリンクエクイティ転送は瞬時には起こりません。通常、数回のクロールサイクルが必要で、クロール予算とドメインサイズに応じて数日から数週間かかります。既存のオーソリティを持たない完全に新しい宛先URLの場合、その統合は非常に重要です。不正な302を301に修正し、修正された.htaccessファイルを実行してGoogle Search Consoleを通じて再クロールを強制することで、マイグレーション後6~8週間以内にマイグレーション前のトラフィックレベルに復帰したサイトを見てきました。.htaccess file and forcing a recrawl through Google Search Console.

301リダイレクトを使用する場合

移動が本当に永続的である場合はいつでも301を使用してください。具体的なシナリオをいくつか示します:

  • HTTPからHTTPSへ移行している(ここのすべてのリダイレクトは301であるべき)
  • ページが削除されていて、URLをその最も関連のある代替ページに指している
  • WordPressでパーマリンク構造を変更した(これは常に人々を悩ませる)
  • マージまたはリブランド後に2つのドメインを1つに統合している
  • 製品が廃止されていて、カテゴリページにリダイレクトしている

2022年後半にファッション小売業者向けに行ったWooCommerce移行では、古い商品URLが約800個あり、新しいURL構造へのリダイレクトが必要でした。Redirectionプラグインを使用して正規表現パターンマッチングで301リダイレクトを設定し、すべてを処理しました。セットアップに約2時間かかりました。手作業で行うか、「まずテストするために」302を使う代替案は、数ヶ月のリカバリー時間がかかっていたでしょう。Redirection plugin with regex matching for the pattern. Took about two hours to set up cleanly. The alternative, doing it manually or using 302s "just to test", would have cost them months of recovery time.

HTTPS移行のワナ

このケースです。HTTPからHTTPSへの移行時に302を使う開発者をまだ見かけます。理由は「SSLをまずテストしたい」からです。やめてください。証明書がインストールされて動作しているなら、すぐに301にしてください。HTTPS移行での302アプローチは、Google Search Consoleで悪名高い「重複コンテンツ」フラグの最も一般的な原因の1つです。なぜなら、Googlebotが一定期間両方のバージョンをインデックスする可能性があるからです。

302リダイレクトを使う場合

多くの人が考えるより本当にごく少数のケースです。302が適切なのは以下の場合です:

  1. ページのA/Bテストを実行していて、テスト中に元のURLがランキング信号を保持したい場合
  2. 一時的なプロモーションキャンペーンを実行している場合(たとえば、ブラックフライデーのために一時的なランディングページでホームページを置き換える場合)
  3. メンテナンスを実施していて、ユーザーを数時間ステータスページにルーティングしている場合
  4. ユーザーをページのローカライズ版にジオリダイレクトする場合(永続的にする必要がない場合)

最後の1つは立ち止まって考える価値があります。イギリスの訪問者を/en-gb/にリダイレクトしており、米国の訪問者を/en-us/にリダイレクトしている場合、これらは302である必要があります。なぜなら、単一のユーザーグループが正規URLを「所有」していないからです。Googleはhreflangを通じてジオターゲティングを個別に処理していますが、302は元のURLがまだ正規の宛先であることを示しています。/en-gb/ and US visitors to /en-us/, those should be 302s, because no single user group "owns" the canonical URL. Google handles geo-targeting separately through hreflang anyway, but the 302 signals that the original URL is still the canonical destination.

Seahawkは昨年、30日間の無料トライアルプロモーションを実施していたSaaS顧客がいました。このプロモーション期間中、ホームページは一時的に/free-trial/ランディングページにリダイレクトされていました。正しい選択肢は302です。彼らはプロモーション終了の瞬間にオリジナルのホームページがそのランキングを取り戻してほしいと考えていました。301を使用していた場合、ホームページのシグナルが/free-trial/に集約され始め、キャンペーン後に完全に消滅予定のページへ流れていたはずです。/free-trial/ landing page. Correct call: 302. They wanted the original homepage to reclaim its rankings the moment the promotion ended. If they'd used a 301, the homepage's signals would have started consolidating onto /free-trial/, which was going to disappear entirely after the campaign.

「GoogleはGoogleは302を301のように扱う」というミス

これはどこかで読んだことがあるかもしれません。そして、その中には一定の真実があります。Googleは特定の状況では、特に宛先URLが長期間にわたって一貫している場合、長年存在している302を301に似た扱いをすることができます。John MuellerはさまざまなGoogle Search Centralのオフィスアワーセッションでこれについて言及しています。can in certain situations treat a long-standing 302 similarly to a 301, especially if the destination URL is consistently the same over a long time period. John Mueller has mentioned this in various Google Search Central office hours sessions.

ただし、ここが重要なポイントです:それはGoogleが開発者のミスに寛容であるというだけであり、あなたが計画の中心に据えるべき機能ではありません。Bingは同じように動作しません。ドメインマイグレーションのような重大な問題についてGoogleの判断に頼るのは、単に不適切な仕事です。正しいツールを使用してください。

現在どのタイプのリダイレクトが使用されているかを確認する方法

現在、サイト上で何がライブであるか確実でない場合、いくつかの迅速な方法があります。

最速の方法:ターミナルを開いてcurl -I https://example.com/old-pageを実行してください。レスポンスヘッダーの中からHTTP/1.1 301またはHTTP/1.1 302を探してください。5秒で完了します。curl -I https://example.com/old-page . Look for the HTTP/1.1 301 or HTTP/1.1 302 in the response headers. Takes five seconds.

数百のURLに対するより徹底的な監査には、Screaming Frog SEO Spiderを使用しています。クロールをエクスポートして、レスポンスコード3xxでフィルタリングすれば、サイト上のすべてのリダイレクトとそのタイプを確認できます。Seahawkで何かに触れる前に、すべてのサイト監査の標準として実行しています。無料版は最大500のURLに対応しており、これは多くの小規模サイトをカバーしています。Screaming Frog SEO Spider is what I use. Export your crawl, filter by response code 3xx, and you can see every redirect on the site and what type it is. I run this as standard on every site audit at Seahawk before we touch anything. The free version handles up to 500 URLs which covers a lot of smaller sites.

WordPressの場合、Redirectionプラグインには、リダイレクト応答コードを含む、すべてのリダイレクトをリアルタイムで表示する組み込みログがあります。マイグレーション後に何か奇妙なことが起きていないかをキャッチするのに本当に便利です。

リダイレクトチェーン:誰もが十分に話さない問題

別の301にポイントしている301、そしてそれが最終URLにポイントしている。これはリダイレクトチェーンであり、複数回のマイグレーションやCMS変更を経たサイトではよく発生します。チェーン内の各ホップはリンクエクイティの転送をわずかに減弱させ、クロールバジェットを消費します。

私が従うルール:Screaming Frogで1つ以上のリダイレクトを含むチェーンが表示されたら、それを修正します。最初のURLを最終的な宛先に直接ポイントします。これは301チェーンと302チェーンの両方に適用されます。

リダイレクトの正しい実装方法

スタックによって異なりますが、最も一般的なシナリオは以下の通りです:

Apache (.htaccess): `` Redirect 301 /old-page https://www.example.com/new-page `` `` Redirect 301 /old-page https://www.example.com/new-page ``

Nginx: `` return 301 https://www.example.com/new-page; `` `` return 301 https://www.example.com/new-page; ``

WordPress(Redirectionプラグイン経由):HTTPコードフィールドを明示的に301に設定します。プラグインはデフォルトで301になっていますが、他のプラグインやインポートによって変更されることがあるため、常に二重確認してください。 Set the HTTP code field to 301 explicitly. The plugin defaults to 301 but I've seen it get changed by other plugins or imports, so always double-check.

Cloudflare Page Rules:CDNレベルで明示的な301または302ステータスコードを使用してリダイレクトルールを設定できます。リクエストがサーバーに到達する前のドメイン全体のリダイレクトに有用です。 You can set redirect rules at the CDN level with explicit 301 or 302 status codes. Useful for domain-wide redirects before the request even hits your server.

追加で言うなら:リダイレクトを実装した後、curlまたはHTTP Status Checkerツールで検証してください。ブラウザでリンクをクリックするだけではいけません。ブラウザはリダイレクトを積極的にキャッシュするため、サーバーが初回訪問者に対して異なる内容を返していても、機能しているように思えます。curl or the HTTP Status Checker tool. Don't just click the link in a browser. Browsers cache redirects aggressively, and you'll think it's working when the server is actually returning something different for first-time visitors.

リダイレクトされたURLを指しているバックリンクに何が起こるか

短い答え:301リダイレクトは、時間をかけて、リンク価値をリダイレクト先のURLに統合します。ただし、バックリンク自体は消えたり自動的に更新されたりすることはありません。それらは依然として古いURLを指しています。リダイレクトはGoogleにそれらのリンクの価値を新しいリダイレクト先と関連付けるように指示します。

これがパーマリンク構造を301を設定せずに変更すると壊滅的な理由です。/blog/post-name/を指している過去に獲得したすべてのバックリンクは、そのURLが/articles/post-name/にリダイレクトするのではなく404になった場合、価値がなくなります。/blog/post-name/ becomes worthless if that URL now 404s instead of redirecting to /articles/post-name/.

2020年に、WordPressテーマを切り替えたコンテンツサイトを監査しました。新しいテーマには異なるURL構造が組み込まれていました。リダイレクトは設定されていません。約200の記事でリンク価値を一夜にして失っていました。Ahrefsのデータによると、適切に実装された301リダイレクトでも、リンク価値の約90~99%が保持されるようです。ただし、Googleは公式な数値を公表していません。重要なのは:不完全な301でも404には比較にならないほど優れているということです。Ahrefs data, even a well-implemented 301 redirect retains somewhere around 90-99% of link equity, though Google hasn't published an official figure. The point is: even an imperfect 301 beats a 404 by an enormous margin.

FAQ

301リダイレクトはリンク価値の100%を渡しますか?

いいえ、そしておそらくこれまで一度もありません。Googleは歴史的に、任意のリダイレクトを通じてPageRankのわずかな損失があることを示唆しています。引用されてきた古い数値は約15%の損失でしたが、Googleはそれ以来幾分か態度を軟化させています。AhrefsとMozはどちらも、単一のクリーンな301の場合、損失は最小限だと推定しています。あなたを傷つけるのは、チェーン、ループ、または完全に間違ったリダイレクトタイプを使用することです。

301リダイレクトを後で別の場所を指すように変更できますか?

はい。301はサーバーサイドの指示であり、Googleのインデックスに永遠に組み込まれているものではありません。いつでもリダイレクト先を更新できます。Googleは次のクロール時に新しいリダイレクト先をピックアップします。301の「permanent」は、その時点での永続的な意図を意味し、技術的に不変であることを意味するものではありません。

Googleが301リダイレクトを処理するのにどのくらい時間がかかりますか?

高いオーソリティを持つサイトで頻繁にクロールされている場合、時には1~2日以内です。より小さなサイトの場合、数週間かかることがあります。Google Search ConsoleのURL検査ツール経由で新しいURLを送信し、インデックス登録をリクエストすることで、これは大幅に高速化されます。すべてのマイグレーションで標準的に行っています。

すべての古いURLをリダイレクトすべきか、それとも重要なものだけにすべきか?

バックリンク、インデックスされたトラフィック、内部リンクがあるすべてのURLには、適切な301リダイレクトを設定すべきです。リンクもインデックストラフィックもないページについては、404でも問題ありません。価値がなかった完全に死んだURLをリダイレクトしてリダイレクト肥大化を招く必要はありません。

JavaScriptリダイレクトはどうですか?同じように扱われますか?

いいえ。JavaScriptリダイレクト(window.locationを使用)はJavaScript レンダリングが必要なため、Googlebotによってはるかに遅く処理されます。他のクローラー間での一貫性も欠けています。SEOに関わることは何でも、サーバーサイドリダイレクトを使用してください。常にです。window.location) are processed much more slowly by Googlebot because they require JavaScript rendering. They're also inconsistent across other crawlers. For anything SEO-sensitive, use server-side redirects. Always.

---

リダイレクトタイプは、見た目は些細に見えるまでは些細な問題です。クライアントに、マイグレーションから6ヶ月後にトラフィックが低下した理由を説明するために何時間も電話でやり取りしたことがあります。それは開発者が「より安全だから」という理由で302を使用する決定に遡ります。それはより安全ではありません。タイプを正しく設定し、チェーンを短く保ち、ブラウザ以外の何かで検証してください。

< BACK