301リダイレクトとは?設定方法や注意点を解説
「301リダイレクトって何?」
「どんな時に必要か知りたい」
企業の経営者やマーケティング・営業担当者の中にはこのような疑問をお持ちの方もいらっしゃると思います。
リダイレクトとは、旧サイトやページを訪問したユーザーを新たなサイトやページに遷移させる処理のことです。
正しくリダイレクトを設定することで、旧ページのSEO評価を引き継いだり、ユーザーやクローラーを新しいURLへ誘導することができます。
本記事では、301リダイレクトの概要や設定方法、注意点などを解説していきます。
1.301リダイレクトとは
301リダイレクトとは、Webサイトの移転に伴い旧URLから新URLに変更した際に恒久的なURL変更を表すステータスコードのことを指します。
主にページURLやドメインを変更する際やWebサイトのSSL化を実施する場合などで活用されます。
恒久的に新URLへ転送するという意味を持ったリダイレクトのため、検索エンジンは新しいURLのSEO評価をすべて引き継ぎ、検索結果に新URLを表示させます。
なお、検索結果に新しいURLが表示されるまで数日~数か月かかる場合があります。
そのため、検索結果に表示されるまでの期間を考慮してリダイレクト処理を進めなければならない点に注意が必要です。
2.301リダイレクトが必要な理由
301リダイレクトが必要な理由は、以下の通りです。
- SEO評価を引き継ぐため
- ユーザーを自動的に新URLへ遷移させるため
- 無駄なクロールを防ぐため
順にご説明します。
(1)SEO評価を引き継ぐため
301リダイレクトを設定することで、旧URLのSEO評価を新URLに引き継ぐことができます。
Googleなどの検索エンジンは、ページのURLごとに評価をつけています。
クローラーが新URLへアクセスした場合、リダイレクト処理がなされていないとページの同一性を特定できず、新しく作成された別のWebページだと認識してしまいます。
結果、旧URLに対するGoogleの評価が引き継がれずリセットされてしまい、内容が同じであるにも関わらず、新URLに対する評価が低下し、検索順位が大幅に下がってしまう可能性があります。
新しいサイトやページで1から評価を集めるなどの二度手間を防ぐために、必ず301リダイレクトを設定しておきましょう。
以下の記事では、301リダイレクトとSEOの関係性について解説していますので、合わせてご覧ください。
(2)ユーザーを自動的に新URLへ遷移させるため
ユーザーを自動的に新URLへ遷移させるためにも、301リダイレクトは不可欠です。
旧URLのリンクからアクセスできなくなるため、301リダイレクトを設定することで移管後の新URLにユーザーがアクセスできるようにする必要があります。
リダイレクト設定を行わなければ、ユーザーは旧URLへアクセスしてしまい、エラーページなどの表示を見て、サイトが閉鎖されたものと受け取る可能性があります。
そのような場合には、ユーザーは自力で新サイトを探さなければならず、ユーザビリティが損なわれるだけでなく、ユーザーの離脱を誘発してしまうことになります。
ユーザーの利便性や信頼を失わないためにも、ページを移転した場合は301リダイレクトの設定を行いましょう。
(3)無駄なクロールを防ぐため
301リダイレクトを設定することで、無駄なクロールを防ぐことができます。
クロールとは、検索エンジンのロボットがWebサイトを巡回し、検索結果として表示させるためのデータを収集することです。
旧URLと新URLのリダイレクト設定をしていなければ、検索エンジンに別のページと認識され、無駄にクロールされてしまいます。
すでに存在しない旧URLやページをクロールされることで、エラーページの表示や処理スピードの低下を招き、ユーザビリティを損なってしまう可能性があります。
また、無駄にクロールされることでクロールのリソースが消費され、他の重要なページにクロールが行き届かなかったり、重複コンテンツと評価されてしまいます。
無駄なクロールは、SEO評価を損なうことにもつながるため、そのような不利益を回避するためにも301リダイレクトの設定を行うことは重要です。
3.301リダイレクトが必要なケース
以下では、301リダイレクトが必要なケースについて解説します。
- URLを新しくする場合
- 複数のページを統合して1ページに集約する場合
- Webサイトを別ドメインに移管する場合
順に見ていきましょう。
(1)URLを新しくする場合
サイト移転やリニューアルに伴い、ドメイン・URLが新しくなった場合、301リダイレクトが必要になります。
具体的には、サイトリニューアルに伴って取得したドメインを新しく制作したサイトに適用したり、特定のWebページのURLの文字列を変更して新しいURLにした場合、古いURLから新しいURLへ転送処理を行う必要があります。
その際に、301リダイレクトを使用することで、永続的に転送処理を行うことができ、また、これまでに得たSEO評価も引き継ぐことができます。
(2)複数のページを統合して1ページに集約する場合
複数のページを統合して1ページに集約する場合も、301リダイレクトの設定が必要です。
また、重複したコンテンツを統合し、1ページにする際にも有効です。
同じ内容のページが複数のURLで存在する場合、ページのSEO評価が分散してしまい、高いSEO評価を得ることができません。
そのため、重複したコンテンツを統合して1ページに集約する場合、301リダイレクトを設定することで記事を統合することができます。
コンテンツの重複はSEOにおいてマイナスになる可能性があるため、定期的にサイト内をチェックしてコンテンツを整理しておきましょう。
(3)Webサイトを別ドメインに移管する場合
Webサイトを別ドメインへ移行する際は、古いコンテンツから新しいコンテンツへ301リダイレクトの設定を行う必要があります。
Webサイトのドメインを変更すると、Webサイト内の全てのコンテンツのURLが変更になるため、旧URLにアクセスしてもコンテンツを読むことができなくなります。
そのため、旧URLから新しいドメインのURLに遷移されるように設定しておくことで、以前のURLにアクセスしたユーザーも新ドメインのサイトに誘導することができます。
4.301リダイレクトの設定方法
以下では、301リダイレクトの設定方法をパターン別でそれぞれ紹介していきます。
- ドメイン単位で転送する場合
- ページ単位で転送する場合
- ディレクトリ単位で転送する場合
- SSL化に伴って転送する場合
- WordPressを使って転送する場合
順に解説していきます。
(1)ドメイン単位で転送する場合
301リダイレクトには、ドメイン単位で転送する場合の設定方法があります。
主にWebサイトの移転やリニューアルを行う場合に使用されます。
例えば、サイトリニューアルに伴い「www.example.com」から「www.tatoeba.com」にドメイン名が変更になったとします。
このような場合には、「www.example.com」から「www.tatoeba.com」へ301リダイレクトを行う必要があります。
具体的には、サーバーの制御ファイルである「.htaccess」を用いて301リダイレクトをするのが一般的です。
その場合のコードは、下記の通りです。
RewriteEngine on
RewriteCond %{HTTP_HOST} ^(www\.)?example\.com$ [NC]
RewriteRule ^(.*)$ https://www.tatoeba.com/$1 [R=301,L]
URL書き換えの条件を指定する「RewriteCond」で旧サイトのドメインを含めたコードを記述し、書き換えの実行を指定する「RewriteRule」で新サイトのドメインを含めたコードを記述し、.htaccessをアップロードすればドメイン単位での転送ができます。
なお、301リダイレクトのドメイン変更について、以下の記事でも解説していますので、ぜひご参照ください。
(2)ページ単位で転送する場合
重複コンテンツや複数のページを統合する場合は、301リダイレクトを使用しページ単位で転送します。
例えば、重複コンテンツを「www.example.com」から「www.tatoeba.com」に統合したい場合などです。
ページ単位で301リダイレクトを設定する際も.htaccessファイルを用います。
具体的なコードについては、下記の通りです。
RewriteEngine on
RewriteRule ^AAA/$ www.tatoeba.com [R=301,L]
上記コードを記述し、.htaccessファイルをサーバーにアップロードすると転送することができます。
(3)ディレクトリ単位で転送する場合
ディレクトリ単位で転送する際も、301リダイレクトの設定が必要になります。
ディレクトリとは、フォルダやカテゴリのことを指します。
ドメインやページはそのままで、ディレクトリのみ変更したい場合に使用されます。
例えば、「example.com/seo/001」から「example.com/method/001」へ転送したい場合、下記のコードを入力します。
RewriteEngine on
RewriteRule ^seo(.*)$ /method$1 [R=301,L]
上記のコードを記述した.htaccessファイルをアップロードすることで、301リダイレクトを実行することができます。
(4)SSL化に伴って転送する場合
SSL化に伴って転送する場合も、301リダイレクトを行います。
SSL化とは、httpからhttpsへ変更し、サイトのセキュリティ性を向上させることを指します。
ユーザーに安全な情報を提供するためにもSSL化が必要とされており、下記の方法でリダイレクトを行うことができます。
RewriteEngine on
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]
上記のようなコードを記述し、.htaccessファイルをアップロードすると転送されます。
(5)WordPressを使って転送する場合
WordPressでリダイレクトをする場合は、 .htaccessファイルを編集しなくてもプラグインでリダイレクト設定ができるというメリットがあります。
.htaccessファイルの編集は、サイト全体にエラーが発生するリスクがあるため、気軽に編集することは困難です。
WordPressでWebサイトを運営している場合は、「Redirection」という公式プラグインを使うことでリダイレクトを行うことができます。
プラグインを活用することで、難しい専門知識は不要なため簡単に導入することができます。
もっとも、すでにプラグインをいくつかインストールしている場合には、不具合や動作が安定しない可能性もあります。
プラグインどうしの相性やインストールしている数も考慮しながら利用を検討するのがおすすめです。
以下の記事で、WordPressでの301リダイレクトについて詳しく解説していますので、合わせてご覧ください。
5.301リダイレクトの確認方法
301リダイレクトの設定が正しくできているかを確認するには、ステータスコード確認コードを活用しましょう。
ohotuku.jpが提供する「リダイレクトチェック」に、旧URLを入力するだけで、簡単に確認することができます。
リダイレクトの設定が正しく行われなければ、SEO評価が下がるだけでなく、ユーザビリティを損なうことにもつながります。
リダイレクトを行う際は、正しく設定できているか必ず確認するようにしましょう。
6.301リダイレクトを設定する際の注意点
301リダイレクトを行う際には、3つの注意点があります。
Webサイトに悪影響を及ぼさないためにも、確認しておきましょう。
特に以下のポイントに留意して実施することが大切です。
- robots.txtの有無を確認する
- 関連のあるページに転送する
- XMLサイトマップを用意する
それぞれ解説していきます。
(1)robots.txtの有無を確認する
301リダイレクトを設定する際は、robots.txtの有無を確認しておきましょう。
robots.txtとは、検索エンジンに該当URLをクロールしないように制御するためのファイルです。
新URLにrobots.txtの記載があると、301リダイレクトを設定しても、クローラーがクロールせずリダイレクトが正しく行われないことがあります。
そのため、リダイレクト設定時にはrobots.txtの記載を削除し、全てのURLをクロールできる状態にしておく必要があります。
(3)関連のあるページに転送する
301リダイレクトを実施する際には、対応するページにリダイレクトを設定しましょう。
関連性の低いページへのリダイレクトは、ユーザーを不安にさせる可能性が高く、ページの離脱につながってしまいます。
また、リダイレクトが不適切だと、SEO評価に悪影響を及ぼす可能性があります。
新しいURLで旧ページがなくなる場合は、できるだけコンテンツの内容に関連性があるページにリダイレクトを設定するようにしましょう。
(4)XMLサイトマップを用意する
サイト移転を行う際は、新旧両方のURLでXMLサイトマップを用意しておきましょう。
XMLサイトマップとは、Webサイトのページ内容を検索エンジンにまとめて知らせるためのものです。
このXMLサイトマップを新旧両方のURLで用意しておくことで、検索エンジンが301リダイレクトを検出しやすくなり、スムーズに新URLに移行することができます。
新URLへの移行が完了した後は、少し期間をおいて旧URLのXMLサイトマップを削除しても問題ありません。
まとめ
301リダイレクトを正しく設定することで、今までのSEO評価の引き継ぎやユーザビリティの向上が期待できます。
Webサイトの移管やURLの変更を行う際、301リダイレクトの設定を行わなければ、それまで積み重ねてきたSEO評価を失ってしまう可能性があります。
リダイレクトを設定する場合は、設定方法や記述ミスに注意し、不備があった場合には正しい形に修正するようにしましょう。
本記事で解説したポイントを参考に、301リダイレクトを設定してみてください。