Webサイトを運営していると、ページのURLを変更したり、サイトを移転したりする場面が出てきます。その際に重要なのがリダイレクトの設定です。
リダイレクトを適切に行うことで、ユーザーや検索エンジンが正しいページへアクセスできるようになり、SEO評価の維持や向上にもつながります。
このページでは、リダイレクトの基本から種類の違い、具体的な設定方法、設定時の注意点まで詳しく解説します。
また、リダイレクト設定時に発生しやすい警告や不正なリダイレクトの原因とその対処法についても触れています。
これからリダイレクトを設定しようと考えている方や、警告が出て悩んでいる方は、ぜひ最後までご覧ください。
適切なリダイレクトの知識を身につけ、スムーズなサイト運営を実現しましょう。
リダイレクトとは
リダイレクトとは、WebサイトのページURLが変更された際に、ユーザーや検索エンジンを自動的に新しいURLへ転送する仕組みのことです。
Webサイトの移転やページのリニューアル、ドメインの変更などが行われた際、適切なリダイレクトを設定しないと、旧URLにアクセスしたユーザーが「404 Not Found」のエラーを受け、Eebサイトの信頼性やユーザーエクスペリエンスの低下につながります。
また、検索エンジンにおける評価の引き継ぎができず、SEOに悪影響を及ぼす可能性もあります。リダイレクトは、単なるアクセスの誘導手段としてだけでなく、検索エンジンに対しページの関連性を適切に伝え、Webサイト全体の評価を維持するためにも重要です。
さらに、リダイレクトを活用することで、ユーザーの混乱を防ぎ、Webサイトの利便性を向上させる効果もあります。
リダイレクトの目的とSEOへの影響
リダイレクトの目的は、ユーザーの利便性を高めることと、検索エンジンによる評価を新しいURLに引き継ぐことの2つに大きく分けられます。
Webサイトのリニューアルやドメイン変更に伴いURLが変更された場合、旧URLにアクセスしたユーザーが「404エラー」を受けると、サイトの離脱や信頼の低下を招きます。リダイレクトを設定することで、旧URLから自動的に新しいURLへ誘導し、スムーズな閲覧を可能にします。例えば、企業の社名変更や商品ラインナップの見直しによるURLの改変が行われた場合、適切なリダイレクトを設定しておくことで、ブックマークや外部サイトからのリンクを有効に保つことができます。
また、SEOの観点からもリダイレクトは重要です。検索エンジンはURLごとにページの評価を行っており、適切なリダイレクトが設定されていないと、検索順位や被リンクの評価が失われ、新しいURLではゼロからのスタートとなる可能性があります。リダイレクトを設定することで、検索エンジンが旧URLの評価を新しいURLへ適切に引き継ぎ、検索結果における順位の維持や向上につながるのです。
これらの理由から、Webサイトの運営において、URL変更時にリダイレクトを正しく設定し、ユーザーと検索エンジンの両方に配慮することが不可欠です。
リダイレクトの種類と違い
リダイレクトにはいくつかの種類があり、目的に応じて適切に使い分けることが重要です。
特に、恒久的な移転を示すものと一時的な移転を示すものでは、検索エンジンへの影響も異なります。ここでは、代表的な2つのリダイレクトについて、それぞれの特徴や違いを詳しく解説します。
301リダイレクト
旧URLから新URLへの移行が永続的である場合、301リダイレクトを設定します。
主にWebサイトの全面的なリニューアルや、企業名の変更に伴うドメインの変更など、一度移行した後に元のURLへ戻す予定がないケースで使用されます。
このリダイレクトを適切に設定することで、旧URLに蓄積されたSEO評価を新URLへ引き継ぐことができ、検索順位の維持や向上につながります。また、ユーザーが旧URLへアクセスした際に自動的に新URLへ遷移するため、ユーザーの利便性を損なわず、離脱を防ぐ効果もあります。
301リダイレクトは検索エンジンに対し、移行が恒久的であることを伝える役割を果たすため、設定時には間違いがないよう注意が必要です。正しく実装しなければ、新旧URL間で評価が適切に引き継がれず、検索結果の順位が低下する可能性があるため、事前に移行計画をしっかり立て、検証を行いながら進めることが重要です。
301リダイレクトに関しては『301リダイレクトとは?必要な理由や設定および確認方法を解説』でより詳しく解説しています、ご参照ください。
302リダイレクト
302リダイレクトは、Webサイトの運用において一時的にURLを変更する場合に使用されるリダイレクト手法です。
例えば、特定のキャンペーンページを一定期間だけ公開し、終了後には元のページに戻すケースや、メンテナンス中の代替ページを表示する際に利用されます。302リダイレクトは検索エンジンに対して、旧URLが今後も有効であり、将来的にアクセスを元に戻す意図があることを伝えます。
そのため、検索エンジンは旧URLのインデックスを維持し、新URLを恒久的なものとして扱いません。これにより、SEO評価の引き継ぎは行われず、新しいURLへの影響は一時的なものとなります。302リダイレクトを適切に使用することで、ユーザーはスムーズに目的のページへアクセスでき、旧URLの評価を損なうことなく運用を続けることが可能です。
ただし、誤った用途で302リダイレクトを設定してしまうと、検索エンジンが新URLを適切に評価せず、意図した成果が得られないことがあるため、利用目的を明確にし、慎重に設定を行う必要があります。
302リダイレクトについては『302リダイレクトとは?301との違いや使用するシーン、実装方法について』にまとめていますのでご覧ください。
ユーザーからは転送が301によるものなのか、302なのかは分かりません。しかし、SEO観点からすれば、URLの変更が永続的なものなのか、一時的なものなのかを検索エンジンに伝え分けることは重要です。
301と302を比べると、302の方がGoogleによる処理は遅くなります。また、301リダイレクト設定をしていれば検索結果に表示されるのは新URL、302リダイレクト設定であれば旧URL表示されることを覚えておきましょう。
リダイレクトの設定方法
リダイレクトを適切に設定することで、ユーザーをスムーズに新しいページへ誘導し、SEO評価の維持にもつながります。
リダイレクトには、サーバー設定からプログラムを活用する方法やCMSのプラグインを使った方法などがあります。
ここでは、主な5つのリダイレクト手法を紹介します。それぞれの特徴や設定手順を理解し、状況に応じた最適な手法を選びましょう。
.htaccessファイルによるリダイレクト
1つ目のリダイレクト方法は、.htaccessファイルです。
.htaccessファイルは、Apacheサーバー上でディレクトリ単位の設定を行うための重要なファイルであり、テキストエディタを使用して作成することができます。このファイルを利用することで、リダイレクト設定だけでなく、BASIC認証の設定やIP制限、さらにはカスタムエラーページの指定など、Webサイトの動作を細かく制御することが可能です。
リダイレクトを設定する際には、.htaccessファイル内に以下のコードを記述し、サーバーがリクエストを受け取った際に正しい処理を実行できるようにします。
サイト全体を転送する場合(〇〇〇.co.jpから□□□.co.jpへの転送)
RewriteEngine On RewriteCond %{http_host} ^〇〇〇.co.jp RewriteRule ^(.*) https://□□□.co.jp/$1[R=301,L]
ディレクトリ単位で送する場合(/〇〇〇/から/□□□/への転送)
RewriteEngine on RewriteRule ^〇〇〇(.*)$ /□□□$1 [L,R=301]
ページ単位で転送する場合(〇〇〇から△△△への転送)
RewriteEngine on RewriteRule ^〇〇〇 $ https://www.□□□.co.jp/△△△ [L,R=301]
上記記述内、301という数字を302に変更することで永久的な転送(301)と一時的な転送(302)を選択可能です。
ファイル作成時の注意点として、文字コードはUTF-8、改行コードはLFに設定しなければ、サーバーが正しく認識しない可能性があります。また、ファイル名の先頭にドット(.)を付ける必要があり、これにより通常のファイル一覧には表示されない隠しファイルとして扱われます。
設定の誤りがサイトの表示エラーにつながる可能性があるため、編集時には事前にバックアップを取ることが重要です。
.htaccessについては『.htaccessとは?基本的な役割や正しい記述方法、設置場所、注意点を徹底解説』に情報をまとめているのでご参照ください。
phpによるリダイレクト
2つ目の方法は、phpによるリダイレクトです。
phpとは、動的なWebページの作成に適したサーバーサイドのスクリプト言語であり、リダイレクトの設定も可能です。
phpを使用したリダイレクトでは、header()関数を用いることで、クライアントのブラウザに対して新しいURLへ移動するよう指示を出します。
以下、記述例を紹介します。
<?php
header("Location:https://□□□.co.jp/", true, 301);
exit;
?>
「https://□□□.co.jp/」の部分を変更することで転送先を指定できます。また、「301」が記述されている部分を302に変更することでリダイレクトの種類を変更可能です。
phpによるリダイレクトは、動的な条件に応じて異なるURLへ転送したい場合や、特定のセッション情報を判別した後に適切なページへ誘導する必要があるケースに有効です。また、phpリダイレクトの利点として、ページ内で処理を行った後にリダイレクトを実行できることが挙げられます。
ただし、ブラウザがキャッシュを保持する可能性があるため、リダイレクトの種類に応じて適切なHTTPステータスコード(301や302など)を指定することが重要です。
サーバーの設定に依存せずに手軽に導入できる点も特徴ですが、SEOへの影響を考慮し、恒久的なリダイレクトにはサーバーレベルの設定と併用することが望ましいです。
JavaScriptによるリダイレクト
3つ目は、JavaScriptによるリダイレクト方法です。
JavaScriptは、PHPと同様に動的なWebページの作成に使用されるプログラミング言語ですが、PHPとは異なり、クライアントサイドで実行される点が特徴です。
JavaScriptによるリダイレクトは、主にサーバー側の設定が難しい場合や、サーバーにリダイレクト設定の権限がない環境で活用されます。
以下、記述例です。
<script type="text/javascript">
<!
setTimeout("link()",0);
function link(){
location.href='https://□□□.co.jp" ;
}
->
</script>
上記のうち、「setTimeout("link()",0);」という部分については転送までの時間を指定する記述です。0の部分に数値を入れることで秒数を指定できますが、基本的には0設定(アクセスと同時に転送)で良いです。
JavaScriptを使ったリダイレクトの利点は、サーバー側の環境に依存せず、手軽に導入できることですが、一方でユーザーのブラウザ設定によってはJavaScriptが無効になっている場合、リダイレクトが正常に機能しない可能性があります。
また、検索エンジンのクローラーはクライアントサイドのリダイレクトを認識しにくいため、SEOの観点からは適切ではない場合もあります。
そのため、SEOを意識した恒久的なURL変更にはサーバーサイドのリダイレクトを優先し、JavaScriptによるリダイレクトは一時的な用途や特定のユーザー環境に限定して使用することが推奨されます。
meta refreshによるリダイレクト
4つ目は、meta refreshによるリダイレクトです。
meta refreshは、HTMLのメタタグを使用してページにアクセスしたユーザーを指定のURLへ転送する方法です。
meta refreshによるリダイレクトの特徴として、転送までの時間を秒単位で指定できるため、例えば「5秒後に新しいページに移動します」といったメッセージを表示した後に、自動的に別のページへ誘導することが可能です。
<meta http-equiv="refresh" content="秒数;URL=https://□□□.co.jp/〇〇〇">
例えば、"秒数"に"3"と記述すれば、3秒後に指定のページへ転送されます。
meta refreshの利点は、.htaccessやプログラムによる設定を行わなくても、HTMLファイルの編集だけで手軽に導入できる点です。そのため、サーバーの設定変更が難しい環境や、短期間のリダイレクトが必要な場合に適しています。
しかし、検索エンジンの評価に影響を与える可能性があるため、恒久的なURL変更には不向きです。
また、ユーザー体験に影響を与える場合があり、設定する秒数によってはページ離脱の原因となることもあるため、適切なタイミングを見極めて使用する必要があります。SEOを考慮する場合は、301リダイレクトなどのより適切な手法を検討することが重要です。
meta refreshについては『meta refreshとは?リダイレクトの設定方法と設置の際の注意点』を用意しているので、ご一読ください。
WordPressのプラグインによるリダイレクト
Webサイト運営のためのCMSとしてWordPressを利用している場合はプラグインからリダイレクト設定が出来ます。
「Redirection」というプラグインをインストールし、有効化させましょう。
プラグインをインストールし、有効化するとWordPress左側のメニュー内、ツールの中に「リディレクション」という項目が追加されます。クリックすると「新しい転送ルールを追加」という画面になりますので、旧URLと新しいURLをそれぞれ入力し、設定を完了させます。
転送設定完了後には新しい転送ルールとして、今設定したリダイレクトが表示されます。基本設定は301リダイレクトとなっていますが、302に変更したい場合は、設定したルールの上にポインタを置き、「編集」ボタンをクリックすると、歯車アイコンを押下しましょう。
その後、表示画面が切り替わり、HTTPコードという項目が表示されるので、その中から302を選んで設定してください。
リダイレクトを行う際の注意点
リダイレクトを適切に設定しないと、ユーザーの利便性やSEOに悪影響を与える可能性があります。特に、サイト移転後のリダイレクトの扱いや設定ミスに注意が必要です。
ここでは、リダイレクトを行う際に気をつけるべき重要なポイントを3つ紹介します。
サイト移転後すぐにリダイレクトを解除しない
リダイレクト設定をすると、ユーザーはURL変更前と同じ指定ページへアクセスできるようになります。
しかし、リダイレクト設定はいつまで残しておかなければならないのでしょうか?
回答としては、サイトやページ毎にリダイレクトによる評価の継承に必要な時間が異なるため、具体的な期間は分かりません。
1ページだけ、どうしてもパーマリンクを変更する必要があるため、301リダイレクト設定をしたのであれば必要な日数は短く済む可能性があります。一方で、サイトリニューアルやドメイン変更となると、サイト内すべてのページがリダイレクト対象となるため、必要期間も長くなります。
GoogleのJohn Mueller氏はTwitterで、以下のように発言しています。
If they're no longer needed after a while (usually I recommend keeping them at least a year), and you don't see
traffic to them, then removing them is fine since it makes long-term maintenance easier.ある程度(通常、私は少なくとも1年以上はキープするようおすすめしている)のリダイレクト管理をし、問題がなさそうなら(リダイレクト)設定は長期的なメンテナンスも楽になるから解除していい。
これらの理由から、Googleについては最低でも1年間程度、リダイレクト設定をそのままにしておいた方が良いとしています。
ただし、これはあくまで「検索ユーザー」を対象とするものであり、自社サイトを「お気に入り」などに入れている可能性がある場合は、半永久的にリダイレクトをキープしておく方が良いです。
リダイレクトチェーンにならないようにする
リダイレクトチェーンとは、転送処理が繰り返されてしまうことを指します。
リダイレクト設定に「AからB」「BからC」「CからD」という3つがあると、Aへのアクセスがあった場合、Dに到着するまで3回の転送が行われることになります。このリダイレクトチェーンにはユーザー、SEOそれぞれに問題が生じます。
ユーザーは、Aを開こうとクリックすると、最後の転送先であるDが開くまでに時間がかかることから、SEOの観点からすると転送する度に評価が下がることになります。
リダイレクトの設定や記述のミスだけでなく、長期間に渡りサイト運営をしているとどのページにリダイレクト設定がかけられているのか、忘れてしまうこともあるでしょう。リダイレクト設定をした場合は必ず、履歴を確認できるようにしておきましょう。
リダイレクトループにならないようにする
リダイレクトループとは、転送処理が繰り返され、終わらない状態を指します。
先のリダイレクトチェーンは終わりがありましたが、リダイレクトループの場合は「AからB」「BからC」「Cから"A"」になっているなどで、転送が延々と続く状態になっています。
リダイレクトループに陥ると「リダイレクトが繰り返し行われました」というエラーが表示されます。リダイレクトループが起こる原因には設定している管理側にある場合と、ユーザー側にもある可能性があります。
ユーザー側でリダイレクトループが出る場合は、Cookieを削除してみましょう。その上で、同じように「リダイレクトが繰り返し行われました」という画面が出る場合は、運営側の設定に何らかの問題があることになります。
リダイレクトに関する警告と対処法
新しいURLへの誘導、旧URLからの評価の継承のためリダイレクト設定をしたものの、正しく設定されていないとGoogleは警告を出します。
主にどのような警告が届くのか、その原因と対処法をご紹介します。
リダイレクトの警告が出る原因と対処法
リダイレクトの設定が正しくない場合にGoogle Search Consoleへ届く警告の原因には、以下の4つが挙げられます。
- Cookieによるもの
- SSL化されていないURL
- 関係がないURLへの転送
- 短縮URLへの転送
Cookieとは、閲覧したWebサイトからインターネットを見るために使うブラウザ(ChromeやFirefoxなど)に残る記録を指します。
新しいWebサイトを訪問すると最初に「Cookieを有効にしてください」というメッセージが出ることがあります。Cookieを有効にすると、ログイン情報などの入力フォームを1度完了しておけば、2度目以降に再入力する手間を省けます。
そのCookie情報が原因でリダイレクトループが起こることがあります。解決方法として、使用しているブラウザに保存されているCookieを削除してみましょう。
次に、WebサイトがSSL化されていないと警告が出ます。
Googleはセキュリティの観点からWebサイトのSSL化を推奨しています(URLのトップ部分がhttpsになっているとSSL化が完了しています)。
リダイレクト設定をする場合にSSL化が完了していないURLへの転送を記述すると、Googleはセキュリティが脆弱なサイトまたはページへのアクセスがあると感知し、警告が出てしまうので注意しましょう。SSL化がまだ終わっていない場合は、急ぎ導入することをおすすめします。
また、関係がないURLへの転送については、旧URLと新URLのページ内容は同じものであるべきところが、関係のないページへの転送になっているとやはり警告が出ます。
301リダイレクトで、Webサイトのリニューアルやドメイン移管などが理由でリダイレクト設定をする場合は、元ページと関係性のある新しいURLへの転送を行うよう設定しましょう。
最後に、短縮URLへの転送を行うと、警告が出ることがあります。
長いURLはツールを使うと見やすく簡単な短縮URLへ変更できます。しかし、この短縮URLは、クリックすると短縮URLを使ったツールのあるサイトへ一度移動し、その後、元の長いURLへ転送されます。
短縮URLをリダイレクトに使うと、転送回数が増えてしまうため、警告が出やすくなります。リダイレクト設定を行うときは必ず元のURLを記述するようにしましょう。
不正なリダイレクトが起きる原因と対処法
Googleは不正なリダイレクトについて、「最初にリクエストされたURLとは別のURLに移動させること」としています。
ユーザーと検索エンジンのクローラー、それぞれを異なるURLへ転送する(クローキングといいます)、ユーザーが求めていないページへ意図的に転送するなどのケースが不正なリダイレクトに該当し、スパム行為と見なされます。
旧ページから新しいページへの転送や、類似・重複したページを1つのページにする場合、会員制サイトで登録したユーザーを内部ページに誘導するなどの転送は正当なものですが、不正なリダイレクトとして判断されてしまう可能性もあります。
リダイレクトの目的そのものがユーザー、検索エンジンを欺くようなものでなければ問題ありませんが、Google Search Consoleに警告が出ている場合には内容をチェックし、適切な形に変えるようにしましょう。
まとめ
リダイレクトは、WebサイトのURLが変更された際にユーザーを適切なページへ誘導し、検索エンジンからの評価を維持するために欠かせない設定です。
301や302などの種類があり、目的に応じた適切な選択が重要です。また、.htaccessやJavaScript、PHPなど設定方法も多岐にわたるため、サーバー環境に適した方法を選ぶ必要があります。
さらに、設定の際にはリダイレクトチェーンやループなどの問題が発生することがあるため、注意点を理解し、適切に対処することが求められます。
このページを参考に、SEOに悪影響を与えない正しいリダイレクト設定を実践しましょう。
リダイレクト設定は、SEO対策における内部対策の1つです。内部対策とは何か、以下のページで詳しく紹介しているので、ぜひ、ご一読ください。