SEO対策 リダイレクトとは?意味と種類・設定方法をケースごとに解説

サイトが移転されたり、ページが統合されURLが変更された場合、Googleは旧ページを検索結果に表示します。リダイレクトは新ページを認識させるために使用されるのですが、いくつか種類があるため、設定を間違うと検索順位が下がったりペナルティを受ける可能性があります。本項を参考に適切なリダイレクト設定を行いましょう。
リダイレクトとは
リダイレクトとは、WEBサイトのリニューアルでページのURLを変更した場合や、ドメイン自体を変更した際に古いURLに、アクセスしたユーザーを自動的に新しいURLに遷移させる仕組みのことです。
WEBの世界では、「HTTPリダイレクト」や「URLリダイレクト」、「URL転送」と呼ばれています。
リダイレクトの設定をすることで、ユーザーと検索エンジンに新しいページの存在を知らせることができます。サイトを訪問した際に、「〇秒後に別のサイトへ移動します」といった画面が表示され、矯正的に別のページへ移動した経験をしたことがあると思いますが、これが「リダイレクト」になります。
後程詳しく説明しますが、リダイレクトにはいくつかの種類があり、ドメイン変更や一時的にサイトを閉鎖する場合などケースによって使い分けることができます。
リダイレクトが重要な理由
リダイレクトを適切に設定することが重要な理由は、「ユーザーの利便性を損なわないようにする」と、いう点と「SEO対策において効果的である」という点が挙げられます。
例えば、サイトのドメインを変更した際にリダイレクトの処理をしなかった場合、ユーザーが古いURLにアクセスすると404not found(このページは存在しません)が表示され、ユーザーは新しいページにアクセスすることができません。
よくあるケースとしては、ユーザーがURLをブックマークをしてサイトにアクセスしていた場合です。この場合、ユーザーは新しいURLに辿り着くことができなくなり、404が表示されたことでサイト自体が無くなったと勘違いしてしまう可能性があります。
このような場合、サイト運営者にとっては機会損失となるため、リダイレクトの設定をおこない新しいぺージにユーザーを誘導してあげる必要があります。
また、SEOの観点でもリダイレクトの処理は重要です。リダイレクトをおこなうことで、サイトの評価(被リンクの評価)を新しいドメインに引き継ぐことができます。
逆にリダイレクトをしない場合は、過去に獲得した被リンクの評価を引き継がないため、0からサイトを育てていく必要があります。
リダイレクトは、「ユーザビリティ」「SEO効果」を向上させるために重要ということを覚えておきましょう。
リダイレクトの設定が必要なケース
どのような場面でリダイレクトの設定をすれば良いかを解説します。
▼ リダイレクトが必要になる具体的なケースは、以下の5つになります。
- リニューアルに伴ったURL変更が発生する場合
- サイトの移転時のドメイン変更
- PC向けサイトとスマホ向けサイトでURLが違う場合
- 一時的に別のページを見せたい時
- URLの正規化をおこなう場合
それぞれ詳しく解説します。
リニューアルに伴ったURL変更が発生する場合
サイトをリニューアルする際に、下層ページのURLを別のURLに変更する際はリダイレクトが必要になります。
よくあるケースとしては、ディレクトリ構造の変更を含むリニューアルをおこなう場合です。
https://〇〇〇.com/カーテン → https://〇〇〇.com/shop/カーテン
上記のように、WEBサイトの構造変更に伴いURLを変更する場合などが該当します。
古いページには存在していなかったぺージを新規で作成する場合は必要ありませんが、ページの内容や役割が同じにもかかわらずURLを変更する場合は、リダイレクトの設定をおこないましょう。
サイトの移転時のドメイン変更
サイトのドメイン自体を変更する場合も、リダイレクトの設定が必要になります。
【ドメイン変更例】
https://aaa.com → https://bbb.com/
このようにドメイン変更をする際は、サイト全体に対してリダイレクトの設定をおこなうことで、古いサイトのどのURLにアクセスしても新しいURLに自動で転送されます。
古いURLにアクセスしたら、新しいサイトのトップページに転送することもできますし、URLごとに転送先のURLを設定することも出来ます。
PC向けサイトとスマホ向けサイトでURLが違う場合
パソコンユーザーとスマホユーザーに向けて、それぞれ別のURLを用意していた場合は、訪問ユーザーを対象のURLへリダイレクトすることで、デバイスの表示サイズにマッチしたページをユーザーに表示させることができます。
ただし、PCとスマホぺージの表示に関してGoogleが推奨している方法は「レスポンシブデザイン」です。そのため、SEO効果を高めたい場合や予算に余裕があるのであれば、リダイレクトによって別々のページを表示させるのではなくレスポンシブデザインで対応するようにしましょう。
一時的に別のページを見せたい時
サーバーエラーなどが発生したり、サイトの移行期間中などに「メンテナンス中です」という画面を表示させたい場合にも有効です。
ユーザーがサイトにアクセスした際に、「メンテナンス中です」と表示されるページへ転送をおこない、ユーザーにページが無くなった訳ではないことを伝えましょう。
また、検索エンジンに対してもサイトに不具合があるわけではないと伝える役割も持つため、メンテンス等でサイトを一時的に閉鎖する場合は必ず設定しましょう。
また、期間限定で行っているキャンペーンページへ一時的に転送したいときにもリダイレクトは有効です。特設ページにユーザーを誘導することで、情報を確実に伝えられるので専用のページを用意出来る場合は積極的に活用しましょう。
URLの正規化をおこなう場合
SSL対応をせずに運用していたサイトをSSL化して、
- URL表記を「http://~」から「https://~」にする場合
- 「www」がついていないURLに「www」を後からつけて、「https://www.~」にする場合(wwwを外す場合も同様)
いずれもGoogle側はそれぞれを別のドメインと認識します。
上手く処理しないと、変更前と変更後のページが同時に存在するとみなされた場合に、サイトを正しく評価してもらえません。
どちらをGoogleに評価してほしいのか伝えるために、ドメイン変更の際はリダイレクトが必要になります。
ユーザーがサイトに複数の異なる URL でアクセスする場合。たとえば、ホームページにhttps://example.com/home、 http://home.example.com、https://www.example.com など複数の URL でアクセスできる場合は、そのうちの一つを優先(正規)URL として選択し、リダイレクトを使用して他の URL のトラフィックを優先 URL に送信することをおすすめします。
リダイレクトと Google 検索
リダイレクトのSEO効果
リダイレクト設定によるSEOへの影響は、後述する「301」と「302」の設定を正しく使い分けていれば特に大きな影響はありません。
以前、検索流入を増やすために検索順位の高いページから全く別のページにリダイレクトをかけるというスパム行為が横行したため、リダイレクトのかけられたページは評価がリセットされ、検索順位が上がってくるのを待たなければいけませんでした。
その後、アルゴリズムの精度も上がりスパム行為は通用しなくなったため、リダイレクト設定によってページの評価がリセットされることはなくなりました。
リダイレクト設定を行う際は、「301リダイレクト」を活用してページの評価をしっかりと引継げるようにすることが、リダイレクトのSEO対策への影響を考慮した重要な施策と言えます。
リダイレクトの種類と役割の違い
リダイレクトは、ユーザーがWEBサイトにアクセスしてすぐに転送する方法や、メンテナンスや移転などの詳細が書かれたページを表示させた後に転送する方法など、用途によって使い分けることができます。
以下では、代表的なリダイレクトとして「301リダイレクト」と「302リダイレクト」についてまとめています。
301リダイレクト
301リダイレクトは、WEBサイトのドメイン変更や移設、WEBページのURL変更などをする際に、既存URLから新たなURLへ変更する場合に設定するリダイレクトです。恒久的に転送するという意味を持ったステータスコードで、ユーザーや検索エンジンを新たなURLへ正しく誘導することができます。
301リダイレクトを設定すると、これまでのWEBページで獲得した評価(サイトに対する内部評価や外部リンクなどの外部評価など)を新しいWEBページに引き継ぐことができるため、いくつかのWEBページを一つのWEBサイトに統合するときにも便利なリダイレクトです。
項目/種類 | 301リダイレクト |
転送が続く期間 | 恒久的に転送 |
主な使用場面 | ① ドメイン移転時 ② URLの正規化 |
インデックス先 | リダイレクト先 |
SEO評価の引継ぎ | 引き継げる |
302リダイレクト
302リダイレクトは、一時的な転送に用いられるリダイレクト処理です。例えば、キャンペーン情報を掲載したページを数日~1週間ほどメインページとして掲載する際には、302リダイレクトが用いられます。
あくまで一時的な転送処理である302リダイレクトですが、以前は元のWEBサイトの評価が転送先のWEBページに受け継がないと見られてきました。
しかし、現在は正しいリダイレクトがされているかどうかを検索エンジンがより正確に見極められるようになったため、302リダイレクトを設定した場合も、元のWEBサイトの評価が受け継がれるケースがあると考えられています。
302リダイレクトを設定すると、検索結果にはリダイレクト元のURLが表示されます。
項目/種類 | 302リダイレクト |
転送が続く期間 | 一時的な転送 |
主な使用場面 | ① サイトのメンテナンス ② 一部のページ不具合 |
インデックス先 | リダイレクト先 |
SEO評価の引継ぎ | 引き継げない |
リダイレクトの仕組み
リダイレクトの仕組みは大きく分けて、「サーバーサイドリダイレクト」と「クライアントサイドリダイレクト」の2つに分けられます。
これは転送の情報を誰が指示しているかの違いです、詳しく解説していきます。
サーバーサイドリダイレクト
サーバーサイドリダイレクトは、ユーザーが特定のWEBページを訪れる際、サーバーが別のページにアクセスするように指示を送る設定です。ユーザーのブラウザはこの指示に従い、指定されたページに自動的にアクセスします。
サーバーサイドリダイレクトは、HTTPリダイレクトとも呼ばれ、その操作はHTTPステータスコード、特に300番台のコードによって示されます。
Googleは、どの種類のリダイレクト設定を使用しても、SEO評価はリダイレクト先のページに引き継がれると言っています。しかし、クライアントサイドリダイレクトでは、一部の評価が失われる可能性があります。
それに対して、サーバーサイドリダイレクトでは評価が失われることはないとGoogleは発表しています。そのため、特別な理由がない限りリダイレクトの設定はサーバーサイドで行うことが推奨されています。
サーバーサイドリダイレクトには、.htaccessを使う方法とPHPを使う方法の2種類あります。
それぞれ解説します。
.htaccess
.htaccessはApacheサーバーにおける設定ファイルの1つで、リダイレクトなどの様々な設定を行うことができます。
ただし、.htaccessを使うためにはサーバーへの直接的なアクセス権限が必要であり、Apacheサーバーでないと使用することはできません。そのため、.htaccessを使ったリダイレクトをおこなうにはFTP情報が必要になります。
大量のページに対するリダイレクト設定を一度に行うことができるため、ページ数が多い場合には便利ですが、利用条件を満たしているか確認が必要です。
PHP
PHPを使ったリダイレクトは、サーバーの制限を受けずに行うことができますが、それぞれのページに対してリダイレクトの設定を行う必要があります。
これは、ページごとにPHPのheader関数を用いてリダイレクトを設定するためです。
そのため、リダイレクトを設定したいページが多い場合、各ページに対して設定を行うための作業が必要になります。よって、大量のページに対してリダイレクトを設定したい場合には、PHPを使ったリダイレクトはあまり適していないと言えます。
クライアントサイドリダイレクト
クライアントサイドリダイレクトは、ブラウザが行うリダイレクトの手法で、訪問者がページにアクセスした後に別のページに転送するものです。
ページのデータにはリダイレクト先の情報が含まれており、ステータスコードは200が割り当てられます。一方、サーバーサイドリダイレクトはステータスコード300番台を使用します。
クライアントサイドリダイレクトは、ブラウザの設定やユーザーの環境により、正常に動作しないことがあります。また、リダイレクト元のページを削除せずに残す必要があります。したがって、このリダイレクト方式は、サーバーがHTTPリダイレクトを行えないなど、特定の状況で利用されます。
クライアントサイドリダイレクトの設定方法は、JavaScriptを用いた方法と、HTMLのmetaタグを使用したmeta refreshの方法の2種類があります。
JavaScript
JavaScriptを使ったリダイレクトは、ブラウザ上で動作するコードにより行われます。HTMLファイル内に直接記述することでリダイレクトを設定でき、サーバー側の制限を受けずに操作できることが1つの利点です。
ただし、全てのブラウザがJavaScriptをサポートしているわけではなく、またユーザーがJavaScriptを無効にしている場合もあるため、これらの状況下ではリダイレクトが機能しないという点には注意が必要です。
そのため、JavaScriptを使ったリダイレクトはユーザーの環境により結果が変わることを理解しておくことが大切です。
meta refresh
meta refreshはHTMLタグの一種です。
プログラミングの知識を持ってない人でも行える、比較的手軽な設定方法です。
JavaScript同様にサーバーの制限なく、metaタグからの設定になるのですが、SEO評価が引継がれる保証がなくGoogleも推奨していないためおすすめはできません。
そのため、クライアントサイドリダイレクトではJavaScriptが優先されることが多いです。ただし、SEOにおいて最も理想的なリダイレクト方法は、「301リダイレクト」を使用することです。
リダイレクトの設定方法
リダイレクト設定の種類や特徴について解説してきましたが、本稿ではそれぞれの設定方法について解説します。
【リダイレクト設定方法の種類】
- .htaccessででリダイレクトを設定する方法
- PHPでリダイレクトを設定する方法
- JavaScriptでリダイレクトを設定する方法
- meta refreshでリダイレクトを設定する方法
.htaccessでリダイレクトを設定する方法
.htaccessを活用してリダイレクト設定を行うには、サーバーに「.htaccess」のテキストファイルデータをアップロードする必要があります。
手順はメモ帳ソフトを開いて、テキストファイルにリダイレクト設定について命令文を記述します。次にテキストファイルを「.htaccess」の拡張子で保存後に、サーバーにアップロードして完了です。
.htaccessはリダイレクトをかける場面や階層によってソースの記述方法が複数存在します。様々なパターン・シチュエーションごとにタグの書き方を解説していきます。
URLの正規化が目的の場合
URL正規化とは、同一コンテンツのページが複数のURLで存在する場合に、検索エンジン評価を一元化する目的で、特定のURLに統一するプロセスのことを指します。
URLの正規化をおこなう事で、検索エンジンが評価するページが1つになるためSEO効果を高めることができます。
【URLの正規化が必要になる例】
- http httpsの統一
- index.html有無
- wwwの有無
- URL末尾「/」の有無
- URLの大文字、小文字の統一
- パラメータを付与したURLの統一
など
■「index.html」有りから「index.html」無しに統一する場合の書き方
RewriteEngine on
RewriteCond %{THE_REQUEST} ^.*/index\.html
RewriteRule ^(.*)index.html$ https://www.sem-plus.com/$1 [R=301,L]
■「www.なし」のURLから「www.あり」に転送が目的の場合
RewriteEngine on
RewriteCond %{ HTTP_HOST} ^sem-plus.com
RewriteRule ^(.*)$ https://www.sem-plus.com /$1 [L,R=301]
ドメイン単位でのリダイレクト設定が目的の場合
ドメイン単位でのリダイレクトとは、サイト移転などで別のドメインに全てのページを転送させる際に利用します。
例:「https://〇〇〇〇.com」から「https://〇〇〇〇.jp」
■ドメイン単位で転送設定を行う場合の書き方
RewriteEngine on
RewriteCond %{http_host} ^ www.〇〇〇〇.com
RewriteRule ^(.*)$ https://www.〇〇〇〇.jp/$1 [R=301,L]
※ 注意点
ドメイン単位でリダイレクトする場合は、転送元と転送先のURLが同様のディレクトリ構造(トップページから各種カテゴリーページ、下層ページ階層設定が同一)である必要があります。
ページ単位でのリダイレクト設定が目的の場合
移転先のサイトのディレクトリ構造が元のサイトと異なる場合はドメイン単位ではなく、ページ単位でリダイレクトをおこなう必要があります。
例:「https://sem-plus.com/aaa.html/」から「https://sem.com/sss/bbb.html/」
■ ページ単位で転送設定を行う場合の書き方
RewriteEngine on
RewriteRule ^aaa.html/$ https://www.sem-plus.com/bbb.html/[L,R=301]
ページを削除をした場合や、特定のページのURLを変更した際に設定します。
ディレクトリ単位でのリダイレクトが目的の場合
ディレクトリ単位で移転する場合は以下になります。
例:「https://sem-plus.com/seo/」から「https://sem.com/seo/」
■ ディレクトリ単位で転送設定を行う場合の書き方
RewriteEngine on
RewriteRule ^seo-old(.*)$ / seo-new$1 [L,R=301]
尚、ディレクトリ単位でページを移転する場合は、ディレクトリ配下のURL構成移転元と移転先と同じである必要があります。
一部のページだけ転送させたくない場合
WEBサイト全体にリダイレクトを設定したが、一部のページは転送させたくない場合があります。
転送させたくないページを「sem-plus.com/bbb」とすると、以下のように記述すれば「sem-plus.com/bbb」とつくURLのすべてが転送されない様になります。
■ 一部のぺージだけ転送設定させない場合の書き方
RewriteEngine on
RewriteBase/
RewriteCond %{REQUEST_URI} !(^sem-plus.com/bbb/)
RewriteRule ^$sem-plus.com/bbb/ https//:www.sem-plus.com[R=301,L]
PHPでリダイレクトを設定する方法
PHPファイルを使っている場合、リダイレクトを設定したいページのPHPファイルの冒頭に、以下の記述を追加して設定することも可能です。
【header関数を使用する方法】
<?php
header(“Location: 新しいURL”);
exit;
?>
上記のコードでは、header()関数を使用して新しいURLにリダイレクトしています。Locationヘッダーを設定し、新しいURLを指定します。また、リダイレクト後にはexitを呼び出してスクリプトの実行を終了します。
【HTMLのmetaタグを使用する方法】
<?php
echo ‘<meta http-equiv=”refresh” content=”0;URL=新しいURL”>’;
?>
上記のコードでは、<meta>タグを使用してリダイレクトを行っています。http-equiv属性を使用してrefreshを指定し、content属性でリダイレクトまでの待機時間(秒)と新しいURLを指定します。
※ 注意点
- header()関数の前には、HTMLタグやPHPを含むような出力は行ってはなりません。また、改行や空白も含めないようにする必要があります。
- header()関数の後には、exitを指定する必要があります。これによって、header()関数が実行された後にスクリプトが継続されるのを防ぎます。
JavaScriptでリダイレクトを設定する方法
JavaScriptによるリダイレクトは、HTTPリダイレクトが利用できない場合に利用する手法です。これはブラウザ上で動作し、ユーザーのデバイスや行動に応じてページの切り替えを行うことが可能です。ただし、”301リダイレクト”と異なり、旧URLのページランクを新URLに完全に移行することはできません。
JavaScriptでの一番基本的なリダイレクト方法は、window.location.hrefプロパティに新しいURLをセットすることです。このプロパティはブラウザのアドレスバーに表示されている現在のURLを表し、新たなURLを設定するとブラウザがそのURLへ自動的に移動します。
【記述例】
<script>
window.location.href = “転送先URLを記述”;
</script>
応用方法①:画面幅を認識した際に処理されるリダイレクト設定
サイトへの訪問者のデバイス(PC・スマホなど)のブラウザビューポートの幅を計測して、一定以上の値であった場合は、記述されてある転送先URLへリダイレクト処理される方法です。
画面幅を認識した上でのリダイレクト設定は、レスポンシブデザイン設計のWEBサイト以外にも、モバイル用ページなどをパソコン用ページとは別に設けている場合に役立ちます。
以下にリダイレクトコードの記述例を示します。ただし、このコードはページが読み込まれたときに一度だけ実行されます。つまり、ユーザーがブラウザウィンドウのサイズを変更した場合、新しいサイズに基づいてリダイレクトが行われるわけではありません。
【記述例】
<script type=”text/javascript”>
if (window.innerWidth <= 767) {
document.location = “転送先URL”;
}
</script>
応用方法②:デバイスごとに切り替えてくれるリダイレクト設定
サイトへの訪問者のデバイス(パソコンかスマホかなど)ごとに表示するページを切り替えてくれる方法です。
以下にリダイレクトコードの記述例を示します。
このコードはiPhone・iPad・iPod・Androidデバイスを検出しますが、他のモバイルデバイス(Windows Phone、Blackberryなど)を検出するためには追加のコードが必要です。
また、ユーザーエージェントを使ってデバイスを検出する方法は、一部のブラウザやデバイスでは信頼性が低い可能性があります。
例えば、ユーザーがブラウザの設定でユーザーエージェントを偽装することができます。そのため、この方法はあくまで補助的なものとして使い、デバイスに依存した重要な機能を実装する際には別の手段を検討することをお勧めします。
【記述例】
var ua = navigator.userAgent;
var redirectPass = ‘/sp/index.html’;
if(ua.search(/iPhone/) != -1 || ua.search(/iPad/) != -1 || ua.search(/iPod/) != -1 ||
ua.search(/Android/) != -1){
location.href = redirectPass;
}
応用方法③:パラメータをつけたままのリダイレクト設定
以下にリダイレクトコードの記述例を示します。このコードは現在のURLからパラメータを取得し、それを新しいURLに追加します。
【記述例】
var currentURL = window.location.href;
var url = new URL(currentURL);
var params = url.search;
var newURL = “https://aaaaa.com/” + params;
window.location.href = newURL;
これにより、元のURLのパラメータ(例:utm_source=google&utm_medium=cpc)を維持しながらリダイレクトを行います。これは、Google広告などのキャンペーンの効果測定を行う際に特に有用です。
ただし、URLのパラメータにはユーザーのプライバシーやセキュリティに関わる情報が含まれる場合があります。そのため、パラメータを扱う際には注意が必要です。パラメータを含むURLを無闇に共有したり、安全でない方法で扱ったりしないようにしましょう。
また、ユーザーエクスペリエンスを向上させるために、適切なエラーハンドリングを行うことが重要です。
応用方法④:秒数を指定した上でのリダイレクト設定
秒数を指定したリダイレクト設定は、特定の秒数後にWEBページが自動的に別のURLにリダイレクトする設定のことです。これはJavaScriptのsetTimeout関数を使用して実現され、ユーザーに特定の待機時間を経た後に新しいページを表示します。
▼ 以下にリダイレクトコードの記述例を示します。
【記述例】
setTimeout(redirect, 0);
function redirect(){
location.href=”/sp/index.html”;
}
上記のコードでは「0」と指定されていますので、0秒後(つまり、アクセス直後)にリダイレクトされます。この数値を変更することで、リダイレクトまでの遅延時間を自由に設定することが可能です。
ただし、ユーザーエクスペリエンスを考慮に入れて、リダイレクトの遅延時間を適切に設定することが重要です。
meta refreshでリダイレクトを設定する方法
HTMLの<meta>タグを使用してリダイレクトを設定する方法には、「meta refresh」と呼ばれる手法があります。
これは、HTML文書の<head>内に以下のように記述します。
【記述例】
<meta http-equiv=”refresh” content=“0;URL=’転送先URLを記述'”>
ここで、content属性には「0;URL=’転送先URLを記述’」という値を指定しています。これは「0秒後(すぐに)に指定したURLにリダイレクトする」という意味です。この数字を変更することで、リダイレクトまでの待機時間を指定することができます。
この方法は、JavaScriptが無効化されているブラウザでもリダイレクトを行うことができるため、広範囲の環境でのリダイレクトを確実に行いたい場合に有用です。
ただし、この方法ではユーザーが戻るボタンを使って前のページに戻ることができないため、ユーザーエクスペリエンスの観点からは注意が必要です。
Googleの「リダイレクトの警告」と「不正なリダイレクト」について
リダイレクトが設定されたサイトを開くと、「リダイレクトで別ページに飛ぼうとしている」ことを警告する画面が表示されたり、不正なリダイレクトに関しての通知をサーチコンソールで受け取ることがあります。
これはリダイレクトの設定がGoogleのガイドラインに違反していたり、危険なページに自動転送しているのではないかとGoogleから疑われているなどの可能性が考えられます。
本稿では、それぞれの対処法を解説します。
リダイレクトの警告が出た際の対処法
リダイレクトの警告が表示された際は、警告が発生している原因を特定し、原因に合わせて対処法をおこなう必要があります。
リダイレクトの警告が出る代表的なケースを4つ紹介します。
原因と対処法①:SSL化されていないサイトへリダイレクトされている
SSL化とはブラウザとサーバーの通信を暗号化することで、データを不正に抜き取られたりしないようにする、セキュリティ対策のことを言います。
SSL化されたサイトは、URLの表記が「http://」から「https://」に変わります。Googleはインターネットユーザーの安全を守るためにSSL化を推奨し続けています。
そのため、仮にSSL化していないURLへリダイレクト設定をしてしまうと、暗号化されていない安全ではないサイトへの動線になるとGoogleから認識され「リダイレクトの警告」がされます。
WEBサイト全体をSSL化する、「常時SSL化」を行いましょう。
原因と対処法②:cookieが残っている
Cookieはユーザーのログイン情報などを一時的に保存しておき、次回の訪問時にログインを簡単に行うための仕組みです。
ブラウザに以前の訪問データが残っているせいで、リダイレクトの警告が出る場合があります。端末を再起動したり、シークレットモードを試したりしてみても警告が出る場合はCookieを削除してみましょう。
原因と対処法③:関連が無いページへのリダイレクト(社名&ドメインが変わったなど)
リダイレクトで飛んでいく先のページが、リダイレクト前のページと関連性がないと判断された場合も「リダイレクトの警告」が表示される可能性があります。
関連性があれば問題ないのですが、例えば会社名が変更されてドメインを変更してガラリとサイト内容が変わった場合などは、Googleからページの内容に関連性が薄いと判断されないように注意が必要です。
原因と対処法④:短縮URLへのリダイレクト
短縮URLとは、長いURLを短く変換したURLの事です。
短縮URLへアクセスするには、対象のページを表示する前に、短縮URLのデータベースを経由して対象ページを表示させるため通常のアクセスと違い、全く関係のない短縮URLページへのアクセスが1つ増えるため、不正なリダイレクト行為とみなされて「リダイレクトの警告」が表示される可能性があります。
短縮URLを使わずに通常のURLを利用するようにしましょう。
不正なリダイレクトが出た際の対処法
不正なリダイレクトとは、検索順位の操作やスパム目的で利用されているリダイレクト設定のことを指します。
例えば、検索エンジンには料理に関するコンテンツを表示させ、ユーザーにはアダルトサイトや詐欺サイトを表示させるなど、ユーザーが望まない形のコンテンツを表示させるリダイレクトが該当します。
不正なリダイレクトは、ユーザーと検索エンジンに異なるコンテンツを表示したり、ユーザーの本来のニーズを満たさない想定外のコンテンツを表示したりすることを目的に、悪意を持って行われています。不正なリダイレクトの例としては、次のようなものが挙げられます。
Google ウェブ検索のスパムに関するポリシー 不正なリダイレクト
・検索エンジンに示しているコンテンツ タイプとまったく異なるコンテンツにユーザーをリダイレクトする
・パソコンのユーザーには通常のページを表示し、モバイル ユーザーはまったく別のスパムドメインにリダイレクトする
このように、アクセスしたユーザーエージェントやIPによって別々のページをリダイレクトをおこない表示させる行為はスパム行為に該当します。
不正なリダイレクトとGoogleから判断された場合は、サーチコンソールの「手動による対策」にぺルティ通知がきます。対処方法は、不正なリダイレクトと判断されている箇所を修正し再審査リクエストをおこない、ペナルティを解除しましょう。
▼ 具体的なペナルティの対処方法は、別の記事で詳しく解説しています。
リダイレクトを実装する際の注意点
リダイレクトを実装する際には、「設定時」と「解除時」に注意しなければいけない点があるので詳しく解説していきます。
301リダイレクトの解除のタイミング
基本的に301リダイレクトは永続的にユーザーを飛ばし続けるのでリダイレクトの解除はせずに、設定し続けるのが理想的です。
Googleのジョン・ミューラー氏は、以前Twitterで「301リダイレクトは、1年ほど保持していれば解除しても問題ない」と発言しています。
旧ページから新ページにリダイレクトを飛ばすと、次第にGoogleは新ページをメインにインデックスするようになってきます。サーチコンソールの「URLを検証」画面から、新旧どちらのページがインデックスされているかの確認も可能です。
しかし旧ページが受けていた被リンクによる評価が、どの程度引き継がれているかは分からないのです。またリダイレクトを解除してしまうと、以前のURLをお気に入り登録をしていたユーザーは新ページを見れなくなるなど、ユーザビリティに関する影響も出てきます。
旧URLを保持し続けるとサーバー代などのコストが余計にかかってしまう場合もありますが、やはり301リダイレクトはかけ続けるのが理想的です。
外す場合は、ページのインデックス状況やアクセス状況を確認しながら慎重に行いましょう。
リダイレクトがループしないようにする
リダイレクトでのページ移動が次々と起こり、無限に行われてしまうことをリダイレクトループと言います。例えば、AというサイトからBというサイトにリダイレクト設定したにもかかわらず、サイトBからサイトAにリダイレクト設定を誤ってしてしまった場合はリダイレクトループが発生します。
リダイレクトループが発生した場合は、ユーザーが目的のページに辿りつけなくなるためユーザビリティの低下に繋がります。
また、クローラーもサイトにアクセスできないためSEO効果も低下します。
リダイレクトループが起こった場合は、「リダイレクトチェッカー」という原因が特定できる無料ツールがあるので、活用しましょう。
▼ 代表的なリダイレクトチェッカーは以下になります。
・リダイレクトチェック
・リダイレクトチェッカー
・リダイレクトチェックツール
基本的な機能は同じなので使いやすいツールを利用してください。
まとめ
リダイレクトの種類や、設定方法について解説しました。専門的な知識やテクニックがない人にとっては少し難易度が高いかもしれません。
不十分なスキルのまま設定を行ってしまうと、それまで受けていたSEO評価が無に帰す可能性も十分にあります。専門家に依頼することも視野に、リダイレクト設定を行いましょう。