「Webサイトをリニューアルしてドメインが変わった」「旧アドレスからリダイレクトをかけるように言われたけれど何のことかわからない」など、自社のWebサイトを運営していると、ときにはこんなケースも出てくるでしょう。
リダイレクトとは、自動的にページを別のページに転送させることを言います。今回は、このリダイレクトの意味や目的、種類、設定方法、.htaccessファイルの書き方などについて解説します。
目次
リダイレクトとは?
リダイレクトとは、Webサイト全体やページなどを新しいURLに変更したときに、自動的に新しいURLに転送させる仕組みのことです。
例えば、自社のWebサイトをリニューアルした際に、Webサイトのドメインを変更したとします。リニューアル前のページをブックマークやお気に入りに入れていたユーザーが、リニューアル後に、そのブックマークやお気に入りをたどってWebサイトにアクセスしたときに、リダイレクトがかかっていなければどうなるでしょうか。
通常は、「404ページ」という「お探しのページがみつかりません」という意味のページが表示されるため、ユーザーは「あれ?このサイト、なくなっちゃったのか」と思ってしまいます。実際にはリニューアルして新しいページに移ったのにもかかわらず、ブックマークしていたWebサイト自体がなくなったとユーザーに勘違いさせてしまう可能性があるのです。そのユーザーが自社にとって大事な顧客や見込み顧客だった場合は、顧客満足度を下げてしまったり、機会損失につながったりしてしまうでしょう。
SEO(検索エンジン最適化)の観点からしても、リダイレクトをかけてページを自動的に別のページに誘導・転送することは、Webサイトリニューアル時には必要不可欠と言えます。これはWebサイトの運営担当者であれば、ぜひとも知っておきたい知識です。
関連記事
・URL(ユーアールエル)とは!意味を正しく理解し初心者でも分かるように解説!
・デッドリンクとは?原因やSEOへの影響を徹底解説
リダイレクトの目的
より詳しくリダイレクトについて確認していきましょう。リダイレクトの目的としては、主に下記が挙げられます。
● ユーザビリティの向上
● SEO対策
ユーザビリティの向上
先ほどご紹介したように、Webサイトを利用するユーザーにとってみれば、リダイレクトが設定されていると非常に便利です。
自社のWebサイトのリニューアル時にサイトのURLを変更した場合、新しいサイトURLへとリダイレクトを設定しておけば、「あ、このWebサイトはリニューアルしたんだな」とユーザーに気づいてもらうことができ、自動的に誘導もできます。
一方、Webサイトリニューアル後にリダイレクト設定がされておらず、旧Webサイトがすでに存在しないURLになっていた場合、ユーザーにアクセス自体を断念されたり、検索エンジンで検索し直すなどの手間をかけさせてしまったりするでしょう。さらに、ページ単位でのURL変更であれば、ユーザーはまたWebサイト内を回遊して同じコンテンツを探す必要が出てきます。
そのようなことになれば、ユーザーにストレスを与えてしまいますし、顧客であれば満足度を下げてしまいます。見込み客も競合サイトへと流れ、大きな機会損失になってしまうかもしれません。
リダイレクトを設定しているかどうかによって、このような損失が起きる可能性があります。ユーザビリティの観点からして、リダイレクト設定は非常に重要と言えるのです。
関連記事:マーケティングに重要な「ユーザビリティ」とは? 定義やポイントを徹底解説
SEO対策
リダイレクトは、SEO対策の観点からも重要です。
もし、長年運用してきて、ある程度Googleでの検索順位が高いWebサイトがあったとします。そのWebサイトのリニューアルに伴ってURLを変更した際、リダイレクトが設定されていないとどうなるでしょう。
Googleはリニューアル後のWebサイトが以前に評価していたWebサイトを移転させたものだということを検知できないため、新しいWebサイトをまったく新規のWebサイトとして認識しまいます。すると当然、古いWebサイトの評価は引き継がれず、これまで培ってきた検索エンジンからの評価がリセットされてしまうというわけです。つまり、Googleであるキーワードを検索したとき、リニューアル前はそのWebサイトが上位表示されていたにもかかわらず、リニューアル後は上位表示されなくなってしまう可能性があるのです。
このように、リダイレクトはユーザビリティとともに、SEO対策にも関係していることから、非常に重要であると言えます。
関連記事
・SEOとは?SEO対策の基礎知識と具体的な方法を詳しく解説
・SEOの基礎知識と重要性、UX向上との関連は?
リダイレクトが必要なタイミング
リダイレクトが必要なタイミングというのは、一体どんなときなのでしょうか。具体例を見ていきましょう。
● サイト移転・リニューアルでURL変更をするとき
● サイトのドメインを変更する場合
● PCサイトとスマートフォンサイトのURLが異なる場合
● サイトメンテナンスページへ一時的に転送したいとき
● 期間限定キャンペーンページなどへ一定期間だけ転送したいとき
サイト移転・リニューアルでURL変更をするとき
Webサイトを移転したり、リニューアルしたりする際にURLを変更するときは、リダイレクトは必須と言えます。
サイトのドメインを変更する場合
「www」なしのWebサイトのURLに「www」をつけるときや、「http」から「https」に変更する場合、つまりSSL化を実施するときなどにもリダイレクトを行うことがあります。
関連記事
・www(ワールドワイドウェブ)とは! 意味や機能を解説します!
・ドメインとは?ビジネスにおける独自ドメインの重要性を徹底解説
PCサイトとスマートフォンサイトのURLが異なる場合
スマートフォンユーザーがPCサイトにアクセスしたときに、自動的にスマートフォンサイトに転送させたいときなどにもリダイレクトは利用されています。
サイトメンテナンスページへ一時的に転送したいとき
サーバーエラーなどの際に、一時的に「ただいまメンテナンス中です」などと記述したページへ転送したいときなどにも利用します。
期間限定キャンペーンページなどへ一定期間だけ転送したいとき
一週間程度など、期間限定のキャンペーンページへ一時的に転送したいときにリダイレクトを利用することがあります。
リダイレクトの種類
続いて、リダイレクトにはどのような種類があるのか確認しておきましょう。
リダイレクトの種類には、「301リダイレクト」と「302リダイレクト」という分類や、「クライアントサイドリダイレクト」と「サーバーサイドリダイレクト」という分類があります。それぞれ解説します。
関連記事:サーバーとは何か?サーバー構築からサーバーエラーやサーバーダウンまで徹底解説
「301リダイレクト」と「302リダイレクト」
301リダイレクトや302リダイレクトというのは、リダイレクトを設定するとき、どのくらいの期間にわたってリダイレクトするかということを示します。
301や302は、W3C(World Wide Web Consortium)というWeb技術の標準化を推進するために設立された団体が定める、ステータスコードの一種です。
Webページの一般的な言語であるHTMLをブラウザが表示する際、ブラウザは、まず3桁の番号を受信し、処理を行っていきます。その番号は100~510まであり、各数値にはそれぞれ意味が決められています。
中でも300番台のステータスコードは、リダイレクト(転送)を意味します。301、302、303、307がありますが、リダイレクト設定するときに使用するのは、301と302でしょう。
● 301
● 302
関連記事:HTMLとは?簡単なHTMLタグの基本からCSSの基礎まで初心者にもわかりやすく解説
301
301のステータスコードは「Moved Permanently」を意味します。これは、あるURLが新しいURLへと永久的、恒久的に変更されたことを表し、今後は新しいURLのみが使用されることを示します。
例えば、Webサイトの移転やリニューアルでページのURLが変更された場合など、この先ずっとリダイレクトしたいという場合に使用されています。
302
302のステータスコードは「Found」を意味します。 これは、これまでのURLが一時的に別のURLへ転送されることを示します。リダイレクト先は一時的なURLであるため、リダイレクト前のURLは保持し続ける必要があります。
例えば、サーバーエラーで一時的にページが表示されなくなった際に、正常に表示できる別ページへリダイレクトさせたいときなど、およそ1~2週間の期間限定で使用されます。
「301リダイレクト」と「302リダイレクト」は使い分けることが大切
上記をまとめると、301リダイレクトは「恒久的なリダイレクト」であり、302リダイレクトは「一時的なリダイレクト」ということになります。
ユーザーからしてみれば同じリダイレクトなので、その違いはよくわからないかも知れませんが、サーバーやブラウザ、検索エンジンにとっては非常に重要かつ大きな違いです。
301リダイレクトは「旧URLから新URLに完全に移転したこと」を、302リダイレクトは「再び旧URLに戻る可能性があること」を検索エンジンに伝えます。そのため、検索エンジンが検索結果を表示するときは、通常であれば、301リダイレクトなら新URLのページを表示し、302リダイレクトなら旧URLのページを表示することになります。
したがって、リニューアルなどの場合に302リダイレクトを使用してしまうと、新しいWebサイトがいつまで経っても検索結果に表示されないという事態も起こりうるので、この点は十分注意するようにしましょう。
「クライアントサイドリダイレクト」と「サーバーサイドリダイレクト」
先述の301リダイレクトには、「クライアントサイドリダイレクト」と「サーバーサイドリダイレクト」の2種類があります。それぞれ解説します。
● クライアントサイドリダイレクト
● サーバーサイドリダイレクト(HTTPリダイレクト)
● Googleはサーバーサイドリダイレクトの利用を推奨している
クライアントサイドリダイレクト
クライアントサイドリダイレクトとは、HTMLに転送先の情報を記述する方法です。Googleなどで検索をしていると、下記のようなテキストとリンクが掲載されているページを見つけたことはないでしょうか。
「本サイトは、新サイトへ移転しました。5秒後に新サイトへ自動的に移ります。自動で転送されなければ、下記のURLをクリックしてください。」
これは、サーバーサイドではなく、クライアントサイドでリダイレクトが設定されているものと考えられます。
サーバーサイドリダイレクト(HTTPリダイレクト)
サーバーサイドリダイレクトとは、その名の通り、サーバーにおいて設定するリダイレクト方法です。「.htaccess」というサーバー設定ファイルに適切な記述をおこない、サーバーにアップロードしてリダイレクトをかけます。
リダイレクト前のURLにアクセスすると、自動的にサーバーがリダイレクト先のURLを返すので、ユーザーは旧URLにアクセスすることはありません。旧URLにアクセスしても、すぐに新URLのページを閲覧できます。
Googleはサーバーサイドリダイレクトの利用を推奨している
クライアントサイドリダイレクトもサーバーサイドリダイレクトも、どちらもリダイレクトを設定する際に利用されるものですが、検索エンジンの代表格と言えるGoogleは、サーバーサイドリダイレクトの利用を推奨しています。理由は、クライアントサイドリダイレクトではページ評価が引き継がれないためです。場合によっては、リダイレクト前後のページがそれぞれ別ページとして検知されてしまう可能性があり、そうなると同じコンテンツを掲載するWebサイトが複数存在することになるため、結果として重複コンテンツとしてペナルティの対象となる恐れもあります。
このことから、SEO対策を実施している場合には、サーバーサイドリダイレクトを選択するのが得策と言えるでしょう。
関連記事:重複コンテンツとは?SEO対策に与える影響を徹底解説
サーバーサイドリダイレクトの設定方法:「.htaccess」ファイルを使う場合
サーバーサイドリダイレクトを設定する際、一般的なのが「.htaccess」というファイルをサーバーに置いて設定するという方法です。
● 「.htaccess」とは
● ページ単位のリダイレクト
● ディレクトリ単位のリダイレクト
● ドメイン単位のリダイレクト
● www有無のURL正規化をしたい場合
「.htaccess」とは
.htaccessとは、サーバー上に置く設定ファイルのことで、リダイレクトの他にも、ルールに沿った記述をすることでさまざまな設定を行うことができます。
.htaccessファイルはテキストエディタを用いて作成します。リダイレクト設定を行う際は、規定の言語でそのための記述を行い、保存します。その後、サーバーにアップロードし、適切なアクセス権限を設定すれば操作は完了です。
記述する内容は、ページ単位のリダイレクトやディレクトリ単位のリダイレクトなど、リダイレクトの仕方によって異なります。それぞれ記述方法をご紹介します。
ページ単位のリダイレクト
ページからページへ、例えば「http://www.●●.com/aaa.html」から「http://www.●●.com/bbb.html」に転送させる場合の記述方法
(赤文字部分を自社サイトに合わせて変更してください)
【コピー用】
RewriteEngine on
RewriteRule ^aaa.html$ http://www.●●.com/bbb.html [L,R=301]
ディレクトリ単位のリダイレクト
ディレクトリからディレクトリへ、例えば「cccディレクトリ」から「dddディレクトリ」に転送させる場合の記述方法
(赤文字部分を自社サイトに合わせて変更してください)
【コピー用】
RewriteEngine on
RewriteRule ^ccc(.*)$ /ddd$1 [L,R=301]
ドメイン単位のリダイレクト
ドメインからドメインへ、例えば「https://www.●●.com/」から「https://www.◆◆.com」に転送する場合の記述方法
(赤文字部分を自社サイトに合わせて変更してください)
【コピー用】
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www.●●.com RewriteRule ^(.*) https://www.◆◆.com/$1 [R=301,L]
www有無のURL正規化をしたい場合
www有りから無しに、例えば「http://www.●●.jp」から「http://●●.jp」に正規化したい場合の記述方法
(赤文字部分を自社サイトに合わせて変更してください)
【コピー用】
RewriteEngine on
RewriteCond %{HTTP_HOST} ^www.●●.jp$ RewriteRule ^(.*)$ http://●●.jp/$1 [R=301,L]
.htaccessファイルを使ってリダイレクト設定する際の注意点
.htaccessファイルを使ってリダイレクト設定する際の注意点としては、主に以下が挙げられます。
● リダイレクト先を適切に設定する必要がある
● 無限ループに注意する
● デフォルトで記述されている文字列に気をつける
● リダイレクト設定をする前にバックアップを取っておく
リダイレクト先を適切に設定する必要がある
.htaccessファイルを使ってリダイレクト設定するときは、リダイレクト先を適切に設定する必要があります。特に、Webサイト間のリダイレクトではなく、ページ単位でリダイレクトを指定する場合、しっかりと旧当該ページの内容が引き継がれている新ページのURLを設定しなくてはなりません。
ユーザーは新Webサイトのトップページに転送されると、当該ページを自分で探さなくてはならず、手間に感じてWebサイトを離脱してしまう可能性が高まります。そうならないためにも、ページ単位でリダイレクト先を指定する場合は適切なURLを指定する必要があります。
無限ループに注意する
リダイレクトは、設定を間違えると無限ループを引き起こしてしまう場合があります。
例えば「旧Webサイトから新Webサイトへ転送」「新Webサイトから旧Webサイトへ転送」といった2つの記述を行ってしまうと、転送先の新Webサイトでまた旧Webサイトへの転送が行われることになり、延々と転送を繰り返すことになります。新旧どちらのWebサイトも表示されないだけでなく、サーバーにも負荷がかかってしまうでしょう。
このような事態にならないためにも、記述ミスによる無限ループを発生させないように十分注意する必要があります。
デフォルトで記述されている文字列に気をつける
特にCMSにWordPress(ワードプレス)を使用している場合は、.htaccessファイルにあらかじめ記述されている文字列に気をつける必要があります。
これらの文字列に少しでも変更を加えたり、削除したりしてしまった場合は、Webサイトが正しく表示されなくなる可能性があります。具体的には「# BEGIN WordPress~# END WordPress」で囲まれている以下の部分となります。
# BEGIN WordPress
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ ? [L] RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
# END WordPress
リダイレクト処理コードと間違えて改変しないよう、十分注意しながら作業を行いましょう。
リダイレクト設定をする前にバックアップを取っておく
上述の説明からも分かる通り、リダイレクトを設定する前にはバックアップを取っておくことをおすすめします。
.htaccessの記述を改変して元に戻せなくなった場合、Webサイトも元の状態に戻らなくなる可能性があります。こういったときに「復元」から簡単に改変前の状態に戻せるようにしておくと安心です。
サーバーサイドリダイレクトの設定方法:WordPress(ワードプレス)の場合
WordPress(ワードプレス)でリダイレクトを設定する場合で、.htaccessファイルに変更を加えたくないときは、「Redirection」というプラグインを利用するのがおすすめです。
こちらのプラグインを利用すれば、転送元と転送先のURLを入力するだけで簡単にリダイレクト設定を行うことができます。また、リダイレクトに設定したURLは一覧として確認することもできます。
関連記事:WordPress(ワードプレス)とは?使ったことがない人に向けた超基本的な解説!
Redirectionの設定方法
1. WordPress(ワードプレス)にログインします
2. 管理画面左側「プラグイン」をクリックします
3. 画面上部「新規プラグインを追加」をクリックします
4. 「プラグインの検索」欄に「Redirection」と入力します
5. Redirectionのプラグインが表示されたら、「今すぐインストール」をクリックしてインストールします
6. 「有効化」ボタンが表示されるので、クリックして有効化します
7. プラグイン一覧に「Redirection」が追加されのるで、設定をクリックします
8. 「ソースURL(転送元URL)」「ターゲットURL(転送先URL)」をそれぞれ入力し、「セットアップを開始」をクリックします
9. 「基本セットアップ」のページに移動します
10. チェック項目が選択できるので、必要に応じて選択します(基本的にすべてチェックするのがおすすめです)
11. 「次へ」をクリックすると「REST API」のページに移動し、自動的に確認が行われます
12. 数秒後「REST API」に「良好」と表示されれば、正しく設定が行われています
13. 最後に「セットアップ完了」をクリックします
リダイレクト設定の際にやらないほうが良いこと
リダイレクト設定の際には、やらないほうが良いことがいくつかあります。とは言え、基本的にはケースバイケースではあり、絶対に避けるべきというものではありません。知識として一通り知っておくと、今後のWebサイト運営に役立つでしょう。
● HTMLの「meta refresh」によるリダイレクト
● JavaScriptによるリダイレクト
● Cryptによるリダイレクト
HTMLの「meta refresh」によるリダイレクト
「meta refresh」という記述を使った転送設定方法があります。これは、クライアントサイドリダイレクト方法の一つです。
転送したいページのHTML内に記述をすることで、リダイレクト設定が可能になります。記述が簡単であるため、この方法は非常に楽と言えるでしょう。
しかし、先述の通り、このクライアントサイドリダイレクトの方法では、Googleの検索エンジンの評価を引き継げない可能性があるため、SEO対策の観点からは避けたほうが良いと言われています。
JavaScriptによるリダイレクト
JavaScriptというWebサイトに利用できるプログラミング言語を使用して、リダイレクトを行うこともできます。サーバーサイドリダイレクトは、サーバー環境によっては行えないことがありますが、その際の代替案としてこの方法がよく利用されています。
ただし、ユーザーがブラウザの設定でJavaScriptを無効化している場合、リダイレクトは行われないという点は十分注意しておく必要があります。
関連記事:JavaScriptとは!初心者でも分かる基本的な概念と仕組みを解説!
Cryptによるリダイレクト
Cryptによるリダイレクトとは、サイトを訪問してきたユーザー自身がリンクをクリックしてリダイレクト先へ移動するリダイレクト方式です。あらかじめWebページに転移している旨を通達しておき、リンクを貼り付けておきます。
非常に簡単に設定できる方法ですが、Googleはサーバー側で設定する301及び302リダイレクトを推奨しており、正式なリダイレクト方式として認識されない可能性があります。この方法を採用する場合は、あくまで一時的な処置として行うことをおすすめします。
リダイレクト設定後について
続いては、リダイレクトを設定した後の事項について、役に立つ情報をお届けします。
● リダイレクト設定ができているかをチェックするには
● どのくらいで検索エンジンに反映されるか
● 301リダイレクトはいつまで設定しておけばいいか
リダイレクト設定ができているかをチェックするには
リダイレクト設定後は、実際にブラウザでリダイレクトを設定したページにアクセスし、正しく転送されるかを確認しておきましょう。
また、リダイレクトが正しく行われているかなど、ステータスを確認することができるチェックツールを利用する方法もあります。Webサイト上でチェックできる無料のツールも多いため、使いやすいものを探してみると良いでしょう。
ここでは下記の3つのルールをご紹介します。
● ohotuku.jp
● Redirect Path
● Chromeのデベロッパーツール
ohotuku.jp
「ohotuku.jp」は、SEOチェックができるツールを集めたWebサイトです。順位チェックツールやキーワード選定ツール、キーワード出現率チェックなどのツールがありますが、その中のひとつにリダイレクトチェックツールがあります。
このリダイレクトチェックツールでは、301リダイレクトが正しく動作しているかどうかを確認できます。使い方は非常に簡単で、URL入力欄にURLを入力し、「チェックする」ボタンをクリックするだけです。リダイレクト回数が表示され、リダイレクトされているかいないかが表示されます。
Redirect Path
「Redirect Path」、はGoogle Chromeの拡張機能として提供されているものです。使い方は非常に簡単で、Google ChromeにRedirect Pathをインストールし、リダイレクト前のURLにアクセスするだけです。
リダイレクトのステータスコードを確認する場合は、ブラウザ右上のRedirect Pathアイコンを確認するとコードが表示されています。ここに想定したコードが表示されていれば正しくリダイレクトが行われています。もし想定していたコードと違うコードが返された場合、設定が間違っている可能性があります。
Chromeのデベロッパーツール
「Chromeのデベロッパーツール」は、上項目「Redirect Path」同様、Google Chromeを利用してリダイレクトの動作確認を行うツールです。ただし「Redirect Path」は拡張機能である一方で、デベロッパーツールはGoogle Chromeに標準で搭載されている機能となっています。
Google Chromeの標準機能ということもあり、非常に高機能でWebサイトのHTML構成などの情報も確認できます。デベロッパーツールの起動方法や動作確認を行う方法などについて解説します。
● Windowsでの起動方法
● Macintosh(Mac)での起動方法
● デベロッパーツールでリダイレクトの動作確認を行う手順
Windowsでの起動方法
Windowsでの起動方法は以下になります。
1. Google Chromeの右上にある「縦三点リーダー()」をクリックします
2. プルダウンメニューから「その他のツール」にオンマウスします
3. さらに表示されたプルダウンメニューから「デベロッパーツール」を選択します
4. デベロッパーツールが起動します
また「Ctrl」+「Shift」+「I」の同時押しや、「F12」キーからでも起動ができます。
Macintosh(Mac)での起動方法
Macintosh(Mac)での起動方法は以下となります。
1. Google Chromeの上部メニューから表示をクリックします
2. プルダウンメニューから「管理/開発」を選択します
3. プルダウンメニューから「デベロッパーツール」を選択します
4. デベロッパーツールが起動します
また「command」+「option」+「I」の同時押しでも起動ができます。
デベロッパーツールでリダイレクトの動作確認を行う手順
デベロッパーツールでリダイレクトの動作確認を行う手順は以下の通りとなります。
1. デベロッパーツールを起動します
2. 画面の中の「Network」タブを選択します
3. 「Network」タブの下辺りに表示されている「Preserve log」にチェックを入れます
4. 動作確認を行いたい旧WebサイトのURLにアクセスします
5. 画面の中ほど一覧となっている部分の最上部「Name」項目から、動作確認を行いたいURLを見つけて選択します
6. 右側に画面が表示されるので、上部の「Headers」タブを選択します
7. 「General」という項目の下にリダイレクトの動作状況が表示されます
どのくらいで検索エンジンに反映されるか
301リダイレクトの設定をすると、検索エンジンが正しく認識するまでどのくらいかかるのか、気になる人もいるでしょう。クロールの頻度によっても異なりますが、通常は数日から数週間ほどかかるのが一般的です。気長に待って、検索結果に表示されるかよく確認しましょう。
301リダイレクトはいつまで設定しておけばいいか
301リダイレクトは、恒久的なリダイレクト手法だとご紹介しました。設定後、いつまで設定し続ければいいのか疑問に思うこともあるかもしれません。
実際、検索エンジンに認識されるようになったら、「そろそろいいかな」と思い、301リダイレクトを解除したくなるかもしれません。
しかし、301リダイレクトを解除すると検索エンジンに新URLのほうを代わりにインデックスしてほしいという情報伝達がされなくなってしまうため、旧URLで培った検索エンジンの評価を失ってしまう恐れがあります。
よって、旧URLの評価を引き継ぎたい、ユーザーのアクセスがまだ旧URLにあるという限りは、リダイレクトを維持し続ける必要があるでしょう。
Googleの「リダイレクトの警告」と「不正なリダイレクト」について
Googleによる「リダイレクトの警告」のページを見かけることがあります。また、Google Search Console(サーチコンソール)を利用中に、「不正なリダイレクト」になっているというお知らせが来ることもあります。
リダイレクトに関して知識を深めるために、この2つについて念のため知っておきましょう。
● リダイレクトの警告
● 不正なリダイレクト
リダイレクトの警告
「リダイレクトの警告」とは、Googleの検索エンジンで検索をしている際、何らかのリンクをクリックしたときに現れることのある警告ページです。これは、Googleが意図的に出している警告です。
ユーザーがあるページに訪れた際に、転送先ページに危険が潜んでいる可能性があるリダイレクトが設定されていることが分かると、「リダイレクトの警告」というタイトルと共に、次のようなメッセージのページを表示します。
「表示中のページからhttp://www.●●.com/にリダイレクトしようとしています。このページにリダイレクトしないようにする場合は、前のページに戻ってください。」
http://www.●●.com/の部分は、ダミーURLとなります。実際は、ここに危険があると思われるリダイレクト先ページのURLが表示されます。
Googleはこうしたページを挟むことで、悪意を持って危険なページへ自動転送するページに、ユーザーがアクセスするのを防いでいるのです。
適切でないリダイレクトがされている可能性がある場合に、この警告を出すようにしているようです。特に、転送先のページが、マルウェア感染やハッキングなどの被害を受ける危険性がある場合と言われています。
もしユーザーとしてこのような警告ページに遭遇したら、転送先が適切かどうかを十分に確認してからアクセスするのをおすすめします。
しかし、この警告ページが出たからと言って、必ずしもすべてが悪意のあるリダイレクトとは限りません。問題ないはずのリダイレクトでも、この警告が出ることがあると言われています。
不正なリダイレクト
Googleは、Googleウェブマスター向けガイドラインに違反しているリダイレクトのことを「不正なリダイレクト」と呼んでいます。そしてSearch Consoleを利用している場合、Search Consoleのメッセージとして、“あなたのWebサイトのリダイレクトは、不正です”といった主旨のメッセージを受信することがあります。
Googleが定義する不正なリダイレクトとは、「検索エンジンには1つのコンテンツタイプが表示されるが、ユーザーはまったく違うコンテンツにリダイレクトされる」といったものや、「PCユーザーには通常のページが表示されるが、モバイルユーザーにはまったく別のスパムドメインにリダイレクトされる」といったものなどがあります。
こうしたリダイレクト手法は、人間のユーザーとGoogleの検索エンジンに異なるコンテンツを表示し、ユーザーが予期した場所とは別の場所にユーザーを移動させることができるものであるため、偽装行為に当たるとGoogleは述べています。
場合によっては、「JavaScript を使用したリダイレクト」が不正な行為に当たる場合もあるともGoogleは述べています。ただし、ユーザーのログイン後に内部ページにリダイレクトする場合は、JavaScript を使用しても問題ないとのことなので、ガイドラインを一読することをおすすめします。
またWebサイトの移転時には301 リダイレクトが最適とされていますが、Webサイトのサーバーにアクセスできないといった場合は、この目的で JavaScript によるリダイレクトを使用することは問題ないとしています。
関連記事:Googleサーチコンソールとは!初心者でも分かる使い方と2022年最新版の機能を紹介します!
「不正なリダイレクト」メッセージを受信したら?
不正なリダイレクトだというメッセージをSearch Consoleで受信することはまれだと言われていますが、もし受信した場合には、メッセージに沿って適切に対処すれば問題ありません。
対処法はケースバイケースになりますが、Googleが推奨しているサーバーサイドリダイレクトで301リダイレクトを設定すればおおむね問題ないと考えられます。
まとめ
◆リダイレクトとは、Webサイト全体やページなどを新しいURLに変更したときに、自動的に新しいURLに転送する仕組みのこと。
◆リダイレクトの主な目的は、ユーザビリティの向上とSEO対策である。
◆リダイレクトが必要なタイミングとしては、サイト移転・リニューアルでURLを変更するときや、サイトのドメインを変更する場合、PCサイトとスマートフォンサイトのURLが異なる場合、サイトメンテナンスページへ一時的に転送したいとき、期間限定キャンペーンページなどへ一定期間だけ転送したいときなどがある。
◆リダイレクトの種類には、「301リダイレクト」と「302リダイレクト」という分類や、「クライアントサイドリダイレクト」と「サーバーサイドリダイレクト」という分類がある。
◆リダイレクトをサーバーサイドリダイレクトで.htaccessファイルを使って設定する場合、「RewriteEngine On」などの言語を記述し、サーバーにアップロードする。