リダイレクトとは│種類・やり方を初心者向けに分かりやすく解説
サイトが移転されたり、ページが統合されURLが変更された場合、Googleは旧ページを検索結果に表示します。リダイレクトは新ページを認識させるために使用されるのですが、いくつか種類があるため、設定を間違うと検索順位が下がったりペナルティを受ける可能性があります。本項を参考に適切なリダイレクト設定を行いましょう。
リダイレクトとは
リダイレクトとは、サイト・ページのURLを変更した際に、古いURLにアクセスしたユーザーを自動的に新しいURLに遷移させる仕組みのことです。
サイトを訪問した際に、「〇秒後に別のサイトへ移動します」といった画面が表示され、矯正的に別のページへ移動した経験は無いでしょうか?これは、「リダイレクト」の仕組みを使ってユーザーを新しいURLへ遷移させています。
このように、リダイレクトはサイトのリニューアルでURLを変更する場合や、ページ同士を統合する場合など、URLを変更する際に使われます。
リダイレクトが必要な理由
リダイレクトは「ユーザビリティ」と「SEO」2つの観点で必要になります。
ユーザビリティとは、WEBサイトの使いやすさを示す指標です。例えば、リニューアルに伴いURLを変更をした場合、ユーザーがブックマーク等から古いURLにアクセスすると404not found(このページは存在しません)が表示され、新しいURLにアクセスすることができません。
この場合、ユーザーは目的のページを新たに探す必要があるため余計な手間がかかります。つまり、ユーザビリティの低下を防ぐためにリダイレクトが必要になります。
SEOの観点でもリダイレクトの処理は重要です。リダイレクトを行うことで、サイトの評価を新しいURLやドメインに引き継ぐことができます。
URL変更時にリダイレクトを行わない場合、検索エンジンは新しいURLとして扱うため元のページが獲得した被リンクのSEO効果も無くなり、ページの評価は0からのスタートとなります。この場合、当然検索順位が下がってしまうなどSEOでマイナスの影響がでます。
リダイレクトを行えば被リンクの効果を新しいページに引き継ぐことができます。リダイレクトは、「ユーザビリティ」「SEO」の観点で必要な施策ということを覚えておきましょう。
リダイレクトが必要になる場面
リダイレクトが必要になる具体的なケースは、以下4つになります。
- URL・ドメインを変更した場合
- URLの正規化を行う場合
- PC向けサイトとスマホ向けサイトでURLが違う場合
- 一時的に別のページを見せたい時
1. URL・ドメインを変更した場合
- URLの変更:https://〇〇〇.com/aaa → https://〇〇〇.com/bbb
- URLの変更②:https://〇〇〇.com/カーテン → https://〇〇〇.com/shop/カーテン
- ドメインの変更:https://aaa.com/ → https://bbb.com/
2. URLの正規化を行う場合
- SSL化後:「http」から「https」にリダイレクト
- URLの正規化:「wwwあり無し」「index.htmlのありなし」「/のありなし」の統一
3. PC向けサイトとスマホ向けサイトでURLが違う場合
- スマホデバイスからPCページにアクセス → スマホページにリダイレクト
- PCデバイスからスマホページにアクセス → PCページにリダイレクト
4. 一時的に別のページを見せたい時
- サイトメンテナンス中:メンテンナンス中のお知らせページにリダイレクト
- 期間限定キャンペーン中:キャンページの特設ページにリダイレクト
リダイレクトの種類
リダイレクトの種類は大きく分けて、「サーバーサイドリダイレクト」と「クライアントサイドリダイレクト」の2つに分けられます。
サーバーサイドリダイレクトは、ユーザーが特定のWEBページを訪れる際、サーバーが別のページにアクセスするように指示を送る設定です。ユーザーはページにアクセスすると自動的にリダイレクトされ新しいURLに移動します。そのため、サーバーサイドリダイレクトを行うと古いURLのコンテンツは見れなくなります。
クライアントサイドリダイレクトは、ブラウザが行うリダイレクトの手法で、訪問者がページにアクセスした後に別のページに転送するものです。「何秒後に新しいページに移動します。」とブラウザに表示されるのがクライアントサイトリダイレクトです。
Googleは、どの種類のリダイレクト設定を使用しても、SEO評価はリダイレクト先のページに引き継がれると言っています。しかし、クライアントサイドリダイレクトでは、一部の評価が失われる可能性があるため、サーバーサイドリダイレクトが推奨されています。
サーバーサイドリダイレクトの種類
前述した通り、リダイレクトを行う場合はサーバーサイドリダイレクトが推奨されています。サーバーサイドリダイレクトを行う際は一般的に、「301リダイレクト」と「302リダイレクト」のどちらかを利用します。
それぞれの違いは、301リダイレクトは恒久的なリダイレクトで301リダイレクトは一次的なリダイレクトです。ユーザビリティの面ではどちらも同じですが、SEO評価の部分が異なります。
301リダイレクト
301リダイレクトは、WEBサイトのURL変更やドメイン変更をする際に設定するリダイレクトです。
恒久的に転送するという意味を持ったステータスコードのため、検索エンジンは新しいURLに古いURLの評価を全て引き継ぎ、検索結果に新URLを表示させます。(検索結果に新しいURLが表示されるまでに数日~数ヶ月かかります)
項目/種類 | 301リダイレクト |
---|---|
転送が続く期間 | 恒久的に転送 |
主な使用場面 | ① ドメイン移転時 ② URLの正規化 |
インデックス先 | リダイレクト先 |
SEO評価の引継ぎ | 引き継ぐ |
301リダイレクトの設定方法については、別記事で詳しく解説しています。
302リダイレクト
302リダイレクトは、一時的な転送に用いられるリダイレクト処理です。例えば、キャンペーン情報を掲載したページを数日〜1週間ほどメインページとして掲載する際には、302リダイレクトが用いられます。
302リダイレクトを設定すると、検索結果にはリダイレクト元のURLが表示されます。
※ ただし、長期間302リダイレクトを行った場合は検索結果にリダイレクト先のURLが表示されます。
項目/種類 | 302リダイレクト |
---|---|
転送が続く期間 | 一時的な転送 |
主な使用場面 | ① サイトのメンテナンス ② 一部のページ不具合 |
インデックス先 | リダイレクト先 |
SEO評価の引継ぎ | 引き継げない |
302リダイレクトの設定方法については、別記事で詳しく解説しています。
Googleが推奨する.htaccessでリダイレクトを設定する方法
リダイレクトの設定方法は、「JavaScript」や「meta refresh」を使ったクライアントサイドリダイレクトもありますが、Googleが推奨している方法はサーバーサイドリダイレクトによるリダイレクトです。
サーバーサイドリダイレクトは、Apacheの.htaccessファイルに301リダイレクトを行う指示を記述します。
▼ 設定手順
- メモ帳ソフトを開く
- テキストファイルにリダイレクト設定について命令文を記述する
- テキストファイルを「.htaccess」の拡張子で保存
- ファイルをサーバーにアップロードして完了
.htaccessはリダイレクトをかける場面や、サイトの階層によって記述方法が異なります。
■ ページ単位でリダイレクトを行う場合の記述方法
- リダイレクト元:example.com/aaa.html
- リダイレクト先:example.com/newpage.html
RewriteEngine on
RewriteRule ^aaa.html$ /newpage.html [L,R=301]
■ ディレクトリ単位でリダイレクトを行う場合の記述方法
- リダイレクト元:example.com/seo-old/
- リダイレクト先:example.com/new-directory/
RewriteEngine on
RewriteRule ^seo-old/(.*)$ /new-directory/$1 [L,R=301]
■ ドメイン単位でリダイレクトを行う場合の記述方法
- リダイレクト元:example.com
- リダイレクト先:example.jp
RewriteEngine on
RewriteCond %{HTTP_HOST} ^example.com [NC]
RewriteRule ^(.*)$ http://example.jp/$1 [R=301,L]
■「index.html」有りから「index.html」無しにリダイレクトする場合の記述方法
- リダイレクト元:example.com/index.html
- リダイレクト先:example.com/
RewriteEngine on
RewriteCond %{THE_REQUEST} /index\.html [NC]
RewriteRule ^(.*)index.html$ /$1 [R=301,L]
■「www.なし」のURLから「www.あり」のURLにリダイレクトする場合の記述方法
- リダイレクト元:example.com
- リダイレクト先:www.example.com
RewriteEngine on
RewriteCond %{HTTP_HOST} ^example.com [NC]
RewriteRule ^(.*)$ http://www.example.com/$1 [R=301,L]
.htaccessについては、別の記事で詳しく解説します。
その他リダイレクトの設定方法
.htaccessで301リダイレクトを行うことが出来ないケースでは、以下の方法でリダイレクトを行うことができます。
- PHP
- JavaScript
- meta refresh
PHP
PHPファイルを使っている場合、リダイレクトを設定したいページのPHPファイルの冒頭に、以下を記述します。
■ header関数を使用する方法
<?php
header('Location: リダイレクト先のURLを記述', true, 301);
exit();
?>
PHPもサーバーサイドリダイレクトのため、.htaccessでリダイレクトを行った時と同じようにSEO評価を引き継ぐことが出来ます。
ただし、ページごとに設定する必要があるため、ページ数が多いサイトの場合は手間がかかります。
JavaScript
サーバーサイドリダイレクトが出来ない場合は、JavaScriptを使ってクライアント側でリダイレクトの設定を行います。
■ JavaScriptでリダイレクトを行う場合の基本的な記述例
<script type="text/javascript">
window.location.href = 'リダイレクト先のURLを記述';
</script>
JavaScriptを使ったリダイレクトは、ユーザーの言語設定やデバイスタイプに基づいて特定のページにリダイレクトする場合などが該当します。
ただし、リダイレクト元のページの評価は引き継がれません。
meta refresh
リダイレクト元のページを一度表示させてからリダイレクト先のページにリダイレクトを行いたい場合は、meta refreshを使います。
■ meta refreshでリダイレクトを行う場合の基本的な記述例
<meta http-equiv="refresh" content="0;URL='リダイレクト先URLを記述'">
content属性には「0;URL='転送先URLを記述'」という値を指定しています。これは「0秒後(すぐに)に指定したURLにリダイレクトする」という意味です。この数字を変更することで、リダイレクトまでの待機時間を指定することができます。
meta refreshによるリダイレクトも、クライアント側のリダイレクトのため元のページの評価は引き継がれません。
リダイレクトを設定する際の注意点
リダイレクトを正しく使うことで、ユーザビリティを損なうことなくURLやドメインを変更することができますが、設定方法や設定期間を間違えるとWEBサイトにマイナスの影響が発生します。
リダイレクトを設定する際の注意点は以下になります。
- リダイレクトをすぐに解除しない
- リダイレクトループが発生しないようにする
- リダイレクトチェーンが発生しないようにする
- 関連の無いページにリダイレクトしない
リダイレクトをすぐに解除しない
リダイレクト設定後は、最低でも1年間はリダイレクトを維持しましょう。すぐに解除した場合、ユーザーが新しいページを確認する前だったり、検索エンジンがSEO評価の引継ぎが終わっていない可能性があるためです。
SEO評価の引継ぎに関しては、Googleのジョン・ミューラー氏が、以前Twitterで「301リダイレクトは、1年ほど保持していれば解除しても問題ない」と発言しています。
ただし、旧ページから新ページにSEO評価が完全に移行されたかどうかをサイト管理者は確認することができません。そのため、旧URLを保持し続けるとサーバー代などのコストが余計にかかってしまいますが、リダイレクトはかけ続けるのが理想的です。
リダイレクトループが発生しないようにする
リダイレクトループとは、リダイレクト元とリダイレクト先に繰り返し遷移してしまう状態を指します。
例えば、AというサイトからBというサイトにリダイレクト設定したにもかかわらず、サイトBからサイトAにリダイレクト設定を誤ってしてしまった場合はリダイレクトループが発生します。
リダイレクトループが発生した場合は、ユーザーや検索エンジンが目的のページに辿りつけなくなるためユーザビリティSEO効果が低下します。
リダイレクトループの原因は殆どリダイレクトの設定ミスです。リダイレクトループが起こった場合は、リダイレクトの設置を確認しすぐに修正しましょう。
リダイレクトチェーンが発生しないようにする
リダイレクトチェーンとは、サイトからサイトへ次々とリダイレクトされる状態を指します。
例えば、サイトAからサイトBにリダイレクトを行い、サイトBからサイトC、サイトCからサイトDのようにリダイレクトし続ける状態もリダイレクトループに該当します。
数回程度のリダイレクトであれば問題ありませんが、5回以上になるとユーザーも検索エンジンも目的のページに辿り着くまでに時間がかかるため、ユーザビリティとSEO評価が下がる可能性があります。
また、リダイレクトエラーが発生しインデックス登録されない可能性もあるためすぐに修正しましょう。
関連の無いページにリダイレクトしない
リダイレクト元のテーマと関連性が無いページにはリダイレクトをしてはいけません。関連性が無いページへのリダイレクトはユーザーを不安にさせる可能性が高くなるため、ページの離脱に繋がります。
また、ドメイン変更をする際に旧ドメイン内の全ページを新しいドメインのトップページにリダイレクトするのではなく、ページごとに内容がマッチしたページにリダイレクトを設定する必要があります。
後程解説しますが、関連の低いページへのリダイレクトは検索エンジンからスパム行為と判断される可能性があります。
リダイレクトエラーが表示された場合の対処法
リダイレクトエラーとは、サーチコンソールのページ登録インデックスレポートに表示されるエラーの1つで、リダイレクトに関する何らかの原因によって、Googleがページをインデックス出来なかった場合に表示されます。
サーチコンソールヘルプ:ページ インデックス登録レポートによると、リダイレクトエラーが表示される原因は以下になります。
- リダイレクトチェーンが長すぎる
- リダイレクトループが発生している
- リダイレクトURLが最終的にURLの最大長を超えた
- リダイレクトチェーンに不正または空のURLがある
リダイレクトエラーを修正後、URL検索ツールからインデックス登録リクエストを送り、問題が解決されていればページはインデックスされます。
また、サーチコンソール上のエラーは問題を修正後、「検証を修正」ボタンをクリックするとGoogleが検証を開始するので、問題が解決されていればエラーの表示は消えます。
※ 問題の検証には数週間かかる場合があります。
リダイレクトの警告や不正なリダイレクトが出た場合の対処法
リダイレクトの設置を行った後に、WEBサイトにアクセスしたら「リダイレクトの警告」が表示された場合や、サーチコンソールに「不正なリダイレクト」メッセージが届いた場合は対応が必要です。
これらはサイトのアクセス数や、検索順位に悪影響を及ぼす可能性があるため、それぞれ解説します。
「リダイレクトの警告」が出た場合の対処法
「リダイレクトの警告」とは、WEBブラウザがユーザーに対して表示するメッセージで、「フィッシング詐欺」や「マルウェアが存在するサイト」など危険と思われるページへのリダイレクトに関する警告です。
ただし、以下に当てはまる場合はリダイレクトの警告が表示される場合があります。
- SSL化されていないサイトへリダイレクトされている
- cookieが残っている
- 短縮URLへのリダイレクト
- 関連が無いページへのリダイレクト
サイト管理者は自社のWEBサイトに「リダイレクトの警告」が表示された場合は、一度シークレットモードを使ってcookieが無い状態で確認してみてください。
シークレットモードでもリダイレクトの警告が表示される場合は、「短縮URLを使わないようにする」「リダイレクト元と関連性が低いページのリダイレクトを解除する」「SSL化する」などの対応を行いましょう。
「不正なリダイレクト」がサーチコンソールに届いた場合の対処法
「不正なリダイレクト」とは、検索エンジンがリダイレクトをスパム行為と判断した際にサーチコンソールに届くメッセージです。不正なリダイレクトの通知があった場合、検索順位は大きく低下するためすぐに改善する必要があります。
以下に該当するリダイレクトは、「不正なリダイレクト」と判断されます。
- リダイレクトを使って検索エンジンとユーザーに別のコンテンツを表示させる
- スマホページにアクセスしたユーザーだけスパムサイトにユーザーをリダイレクトする
このように、ユーザーエージェントやIPによって検索エンジンだけ別のページにリダイレクトをさせている場合はクローキングに該当するため、Googleペナルティの対象となります。
意図せず上記に該当する行為を行っていないか確認して、正しいページにリダイレクトされるようにしましょう。
実際にあったリダイレクトの失敗例
過去、弊社にSEOのご相談があったクライアントで、リダイレクトの失敗によって検索順位が低下していた例を紹介します。
失敗例① リダイレクト先ページのミス
とあるWEBサイトは、ホームページリニューアルでドメインを新しいドメインに変更しましたが、検索順位を大幅に落としていました。また、検索結果にはトップページではなく「移転のお知らせページ」が表示されている状態でした。
原因は、以下のようにリダイレクト設定を行っていた為です。
- 旧ドメインから301リダイレクトで新しいドメインにリダイレクト
- 旧ドメインの全ページは新しいドメイン内に作った「移転のお知らせページ」へリダイレクト
- 移転のお知らせページからトップページへmeta refreshでリダイレクト
このようなリダイレクトを行った結果、旧ドメインのSEO評価を「移転のお知らせページ」が引き継いでしまったため、コンテンツの内容が薄いページが検索結果に表示され順位が下がったと考えられます。
失敗例② 中古ドメインのリダイレクト
とあるサイトオーナーは中古ドメインを購入し、複数のサイトを運営していましたがメインサイト以外は使わなくなったため、不要なサイトからメインサイトのトップページへ全て301リダイレクトを行いました。
その結果、中古ドメインを意図的に被リンクとして使い、ランキングを操作する行為とGoogleから判断され順位が大幅に低下しました。
このケースの場合、リダイレクトを解除したらすぐに順位は戻りましたが、関連性の低い複数のサイトから1つのサイトへリダイレクトをかけると、ペナルティの対象となる可能性もあるため注意しましょう。
まとめ
今回は初心者向けにリダイレクトの種類や、設定方法について解説しました。本記事で解説した通り、新しいURLへのリダイレクトやURLを正規化する際は、301リダイレクトで行うことが推奨されています。
また、リダイレクトの設定を失敗するとユーザビリティやSEO効果に悪影響がでるため十分注意が必要です。不十分なスキルのまま設定を行ってしまうと、それまで受けていたSEO評価が無に帰す可能性も十分にあります。専門家に依頼することも視野に入れ、リダイレクト設定を行いましょう。
ぜひ、読んで欲しい記事
- SEO対策構造化データとは?SEO効果とメリット・書き方を解説2024/11/27
2024/11/27
- SEO対策被リンクとは?SEO効果の高いリンクをわかりやすく解説2024/11/27
2024/11/27
- SEO対策SEO外部対策とは?やり方と注意点を徹底解説2024/11/25
2024/11/25
- SEO対策内部リンクとは?貼り方とSEO効果について解説2024/11/25
2024/11/25
- SEO対策更新頻度とSEOの関係は?最適なコンテンツの管理方法を解説2024/10/28
2024/10/28
- SEO対策ブラックハットSEOとは?ホワイトハットSEOとの違いと手法一覧2024/10/17
2024/10/17