【SEO】301リダイレクトとは?設定方法や行うべき理由

【SEO】301リダイレクトとは?設定方法や行うべき理由

ウェブサイトの運営において、ページの移転や統合は避けて通れない課題となります。その際、ユーザーや検索エンジンにスムーズに新しいページへと誘導するために欠かせないのが「301リダイレクト」です。しかし、その設定方法や重要性、SEOへの影響は十分に理解されているでしょうか?

この記事では、301リダイレクトとは何か、なぜそれが重要なのか、そして具体的にどのように設定するのかを詳しく解説します。さらに、301リダイレクトがSEOにどのような影響を与えるのかについても深掘りします。ウェブサイトの運営者、マーケター、SEO担当者はもちろん、ウェブに関わるすべての人にとって、必読の内容となっています。301リダイレクトの理解を深め、ウェブサイトのパフォーマンスを最大化しましょう!

目次

301リダイレクトとは?

301リダイレクトの仕組み

301リダイレクトとは、特定のURLに対して指定したURLに転送処理を行う設定です。
これは、ウェブサイトが新しいドメインに移行したときや、ウェブページのURLが変更されたときなどに使用されます。

301リダイレクトは「Moved Permanently(恒久的に移動した)」とも呼ばれ、旧ページのSEO対策の上で重要になる”ページの評価”を新ページに引き継ぐよう指示することが可能です。これにより、ユーザビリティのためだけでなく、SEO対策の一環として実施される場合もあります。

301リダイレクトと302リダイレクトの違い

301リダイレクトと302リダイレクトの主な違いは、「恒久性」です。
301リダイレクトは「恒久的な移動」を示し、302リダイレクトは「一時的な移動」を示します。
これは、ウェブページが一時的に別のURLに移動したが、後で元のURLに戻ることを示します。

SEO対策の観点からは挙げると、302リダイレクトでインデックスされるページは旧ページのURLになります。
一時的な転送ではなく、恒久的にページを転送させる場合は当然、301リダイレクトをかけましょう。

301リダイレクトとcanonicalタグの違い

301リダイレクトとCanonicalの違い

301リダイレクトとcanonicalタグは、どちらも重複コンテンツの問題を解決するための方法ですが、使用する状況と働き方が異なります。

301リダイレクトは、ユーザーと検索エンジンを新しいURLに物理的にリダイレクトします。
一方、canonicalタグは、重複している複数のページの中から「正規」のページを指定するために使用されます。ユーザーはリダイレクトされず、すべてのページにアクセスできますが、検索エンジンはcanonicalタグが付けられたページを正規のページと認識し、それに対してページの評価を集めます。

リダイレクトの種類

リダイレクトにはステータスコードが301や302以外にも、いくつかの種類が存在します。

  • 303リダイレクト:一時的な転送で、POSTメソッドでフォームの入力画面から送信画面へのリダイレクトさせる場合などに使用される
  • 307リダイレクト:一時的な転送で、元ページのメソッド(POSTもしくはGET)を引き継いでリダイレクトさせる場合に使用される
  • 308リダイレクト:恒久的な転送で、元ページのメソッド(POSTもしくはGET)を引き継いでリダイレクトさせる場合に使用される
  • meta refresh:サーバーレベルではなく、HTMLメタタグを使用してページレベルで実行されるリダイレクト

このようにリダイレクトにはいくつかの種類がありますが、SEO対策で行うリダイレクト設定は301リダイレクトが一般的です。
ウェブサイトのリニューアルや改修を行う際には、302リダイレクトを使用する場合もあります。

301リダイレクトを設定する重要性

301リダイレクトを設定することは、ウェブサイトの運営において非常に重要な役割を果たします。ここからは、その主な理由をいくつか説明します。

流入の機会損失防止

ウェブページのURLが変更された場合、そのページへの既存のリンクは新しいURLに自動的には更新されません。これは、他のウェブサイトからの被リンクだけでなく、ユーザーがブックマークしたリンクやソーシャルメディアで共有されたリンクにも当てはまります。

301リダイレクトを設定することで、ユーザーと検索エンジンは自動的に新しいURLにリダイレクトされ、流入の機会が損なわれることを防ぐことができます。

SEO対策におけるページ評価の受け渡し

301リダイレクトは、旧ページから新ページへの「ページの評価」の移行が可能です。
ページの評価とはSEOの価値を指し、価値のある一次情報を含んだコンテンツやページの構成などによる評価や、他のページから受ける被リンクの数や質によって得られます。

301リダイレクトを使用すると、旧ページが持っていたページの価値が新ページに引き継がれ、新ページも旧ページと同じように検索エンジンから評価されます。

無駄なクローリングの防止

検索エンジンのクローラーは、ウェブサイトを定期的に訪れて内容をインデックス(検索結果に表示)します。
しかし、存在しないページや重複した内容のページをクローリングすることは、クローラーのリソースを無駄に消費し、ウェブサイト全体のクロール効率を低下させる可能性があります。

301リダイレクトを適切に設定することで、クローラーが必要なページだけを効率的にクロールできるようになり、ウェブサイトのSEOパフォーマンスを向上させることができます。

301リダイレクトを行うべき事例

301リダイレクトは、ウェブサイトの運営において様々な状況で必要となります。ここからは、301リダイレクトを行うべき具体的な事例をいくつか紹介します。

旧ページを上書きせずに新ページを作成した場合

ウェブページを更新する際は、上書きしていくのが一般的ですが、何らかの事情によってできなかったとしましょう。
新しいウェブページを作成し、旧ページの内容をそのまま移行した場合、旧ページから新ページへの301リダイレクトが必要です。
これにより、旧ページへの既存のリンクが新ページに自動的にリダイレクトされ、ユーザーと検索エンジンが新しいページをスムーズに見つけることができます。

重複ページを統合する場合

同じまたは非常に類似した内容を持つ複数のページが存在する場合、これらのページを1つに統合し、残りのページから統合したページへの301リダイレクトを設定することが推奨されます。
これにより、重複コンテンツによるSEOの問題を避けることができます。

なお、類似するページを残しておく必要がある場合は、canonicalタグでの正規化の方が望ましいです。
たとえば、ECサイトを運営していて、色違いのTシャツで色以外の情報が同一のページが存在する場合などが挙げられます。

これはこれまでの経験則ですが、重複ページ統合するための301リダイレクトとcanonicalタグでの正規化について、SEO対策上で効果が異なります。
301リダイレクトの場合は1か月程度で重複ページが90%以上の割合で削除され、リダイレクト先のページに評価が集まります。
しかし、canonicalの場合、1ヶ月で60~70%ほどしか正しいページへの評価は集まらに傾向があります。90%になるにも3~4ヶ月ほどはかかってしまいます。
ですので、残すべき特別な理由がなければ301リダイレクトでの対応が推奨されます。

サイトの移転(リニューアル)を行った場合

ウェブサイトを新しいドメインに移転した場合、旧ドメインの全ページから新ドメインの対応するページへの301リダイレクトを設定することが必要です。これにより、旧ドメインへの既存のリンクが新ドメインに自動的にリダイレクトされ、ユーザーと検索エンジンが新しいドメインをスムーズに見つけることができます。

そのためにも、移転する前にあらかじめ旧サイトのURL一覧を作成し、新サイトのどのページに該当するかを示す対照表を作成することが望ましいです。

URLの正規化を行う場合

URLの正規化とは、同一のコンテンツに対して複数のURLが存在する場合に、一貫したURLを使用するようにすることです。
例えば、http://example.comとhttps://example.comが同じコンテンツを表示する場合、「http」から「https」のリンクへ301リダイレクトをかけることが必要です。
これ以外にも、「www」の有無でページの重複が確認される場合、末尾の「/」のあとに「index.html」の有無でページの重複が確認される場合などにURLの正規化が必要です。

301リダイレクトの設定方法

301リダイレクトの設定方法は、リダイレクトの対象となる範囲やウェブサイトの使用技術により異なります。ここからは、いくつかの一般的な設定方法を紹介します。

ドメイン単位での転送設定

ウェブサイト全体を新しいドメインに移転する場合、ドメイン単位での301リダイレクトを設定することが必要です。

Apacheサーバーを使用している場合、.htaccessという設定ファイルを使用してドメイン全体の301リダイレクトを設定することができます。ここでは、具体的な例として、旧ドメイン(http://old-domain.com)から新ドメイン(http://new-domain.com)へのリダイレクトを設定する方法を説明します。

まず、.htaccessファイルを開き、以下のコードを追加します。

RewriteEngine on
RewriteCond %{HTTP_HOST} ^old-domain\.com [NC,OR]
RewriteCond %{HTTP_HOST} ^www\.old-domain\.com [NC]
RewriteRule ^(.*)$ http://new-domain.com/$1 [L,R=301,NC]

このコードは、以下のように動作します。

  1. RewriteEngine on:この行は、ApacheのURL書き換え機能を有効にします。
  2. RewriteCond %{HTTP_HOST} ^old-domain\.com [NC,OR]:この行は、訪問者がブラウザのアドレスバーにold-domain.comと入力した場合に、次の行のリダイレクトルールを適用します。
  3. RewriteCond %{HTTP_HOST} ^www\.old-domain\.com [NC]:この行は、訪問者がwww.old-domain.comと入力した場合に、次の行のリダイレクトルールを適用します。
  4. RewriteRule ^(.*)$ http://new-domain.com/$1 [L,R=301,NC]:この行は、旧ドメインへのすべてのリクエストを新ドメインにリダイレクトします。

この設定を適用すると、訪問者は自動的に新ドメインにリダイレクトされます。
また、検索エンジンは新ドメインを旧ドメインの後継として認識し、旧ドメインが持っていたSEOの価値を新ドメインに引き継ぎます。

ディレクトリ単位での転送設定

特定のディレクトリ以下の全ページを別のURLにリダイレクトする場合、ディレクトリ単位での301リダイレクトを設定します。これもウェブサーバーの設定ファイルを編集することで行います。

ここでも同様に、.htaccessファイルを使用してディレクトリ単位での301リダイレクトを設定する方法を解説します。具体的な例として、特定のディレクトリ(http://example.com/old-directory/)から新しいディレクトリ(http://example.com/new-directory/)へのリダイレクトを設定する方法は下記の通りです。

.htaccessファイルを開いて、以下のコードを追加します。

RewriteEngine on
RewriteRule ^old-directory/(.*)$ /new-directory/$1 [R=301,L]

このコードは、以下のように動作します。

  1. RewriteEngine on:この行は、ApacheのURL書き換え機能を有効にします。
  2. RewriteRule ^old-directory/(.*)$ /new-directory/$1 [R=301,L]:この行は、old-directory以下のすべてのリクエストをnew-directoryにリダイレクトします。ここで、(.*)$は任意の文字列を表し、$1はその任意の文字列(元のリクエストのパスとクエリ文字列)を指します。[R=301,L]は、301ステータスコードでリダイレクトすることと、これ以上の書き換えルールを処理しないことを指示します。

この設定を適用すると、訪問者は自動的に新しいディレクトリにリダイレクトされます。また、検索エンジンは新しいディレクトリを旧ディレクトリの後継として認識し、旧ディレクトリが持っていたSEOの価値を新ディレクトリに引き継ぎます。

ページ単位での転送設定

特定のページだけを別のURLにリダイレクトする場合でも.htaccessファイルを使用してページ単位で301リダイレクトの設定が可能です。

具体的な例として、特定のページ(http://example.com/old-page/)から新しいページ(http://example.com/new-page/)へのリダイレクトを設定する方法を説明します。

.htaccessファイルを開き、以下のコードを追加します。

RewriteEngine On
RewriteRule ^old-page/$ /new-page/ [R=301,L]

このコードは、以下のように動作します。

  1. RewriteEngine On:この行は、ApacheのURL書き換え機能を有効にします。
  2. RewriteRule ^old-page/$ /new-page/ [R=301,L]:この行は、old-page/へのリクエストをnew-page/にリダイレクトします。これにより、訪問者は自動的に新しいページにリダイレクトされ、検索エンジンは新しいページを旧ページの後継として認識します。

この設定を適用すると、訪問者が旧ページにアクセスした場合、自動的に新ページにリダイレクトされます。これにより、ユーザー体験が向上し、訪問者が求めている情報に迅速にアクセスできるようになります。SEOにおいても、ページの評価を引き継ぐことが可能です。

SSL化(httpからhttps)での転送設定

ウェブサイトを「http」から「https」に移行する場合、全ページからhttps版のページへの301リダイレクトを設定することが必要です。これまでと同様に.htaccessファイルを活用して行うやり方について解説します。

.htaccessファイルに追加する内容は下記の通りです。

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

このコードの説明は下記の通りです。

  1. RewriteEngine On:この行は、ApacheのURL書き換え機能を有効にします。
  2. RewriteCond %{HTTPS} off:この行は、HTTPSがオフ(つまり、http)の場合に、次の行のリダイレクトルールを適用します。
  3. RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]:この行は、すべてのhttpリクエストを同じホスト名とURIのhttpsバージョンにリダイレクトします。これにより、訪問者は自動的にhttpsバージョンのページにリダイレクトされます。

この設定を適用すると、訪問者がhttpバージョンのページにアクセスした場合、自動的にhttpsバージョンのページにリダイレクトされます。これにより、訪問者の情報が暗号化され、安全に通信が行われます。

また、検索エンジンもこのリダイレクトを認識します。
通信の暗号化がされているかはSEOにおいて非常に重要です。httpバージョンとhttpsバージョンで重複ページが存在することで、評価が分散してしまうことも防止できます。

WordPressでのプラグインを用いた転送設定

WordPressを使用している場合、プラグインを使用して簡単に301リダイレクトを設定することができます。
ここでは、「Redirection」を活用して301リダイレクトを設定するやり方を解説していきます。

まず、プラグインをインストールする必要があります。
WordPressのダッシュボードから「プラグイン」メニューを開き、「新規追加」をクリックします。

Redirection

次に、「Redirection」を検索バーに入力し、検索結果に表示された「Redirection」プラグインをインストールします。
インストールが完了したら、「有効化」ボタンをクリックしてプラグインを有効化します。

プラグインが有効化されたら、次にリダイレクトを設定します。ダッシュボードの「ツール」メニューから「Redirection」を選択します。

Redirectionの設定

次に、「新規追加」ボタンをクリックし、リダイレクトを設定します。具体的には、「ソースURL」に旧ページのURLを、「ターゲットURL」に新ページのURLを入力します。
これらのURLは、リダイレクトの起点と終点を示します。すなわち、ユーザーが「ソースURL」にアクセスすると、「ターゲットURL」に自動的にリダイレクトされます。

最後に、「リダイレクトを追加」ボタンをクリックすると、301リダイレクトが設定されます。これで、設定したリダイレクトが有効になり、ユーザーは旧ページから新ページに自動的にリダイレクトされます。

このように、「Redirection」プラグインを使用すると、WordPressで簡単に301リダイレクトを設定することができます。特に、複数のリダイレクトを管理する必要がある場合や、コードを直接編集するのが難しい場合には、このプラグインが非常に便利です。

301リダイレクトが適用されているか確認する方法

301リダイレクトを設定した後、その設定が正しく適用されているかを確認することは非常に重要です。設定が正しく適用されていないと、ユーザーが予期しないページにリダイレクトされる可能性があります。また、検索エンジンもリダイレクトを正しく認識できず、SEOのパフォーマンスに影響を与える可能性があります。

これから解説する方法を用いて、実際に301リダイレクトが適用されているかを確認しましょう。

ブラウザを使用する

最も簡単な方法は、ブラウザを使用してリダイレクトを確認することです。
ブラウザのアドレスバーに旧ページのURLを入力し、Enterキーを押します。
その後、自動的に新ページにリダイレクトされるかを確認します。

HTTPステータスコードチェッカーを使用する

HTTPステータスコードチェッカーは、特定のURLのHTTPステータスコードを確認するためのツールです。
これを使用すると、URLが301ステータスコード(つまり、永続的なリダイレクト)を返すかどうかを確認できます。

ウェブ開発者ツールを使用する

ブラウザのウェブ開発者ツールを使用すると、リダイレクトの詳細な情報を確認できます。
これには、リダイレクトの種類(301または302)、リダイレクトの元となるURL、リダイレクトの先のURLなどが含まれます。

Google Chromeのウェブ開発者ツールを利用して確認する方法としては、下記の通りです。

  1. Google Chromeを開き、旧ページのURLをアドレスバーに入力します。
  2. ページが読み込まれたら、キーボードのF12キーを押すか、右クリックして「検証」を選択し、開発者ツールを開きます。
  3. 開発者ツールの上部メニューから「Network」タブを選択します。
  4. 「Network」タブ内で、ページをリロードします。これにより、ページの読み込みに関連するすべてのネットワークリクエストがリスト表示されます。
  5. リストから最初のリクエスト(通常はページのURLと一致します)を選択します。これにより、そのリクエストの詳細が表示されます。
  6. 「Headers」タブを選択し、”Status Code”を確認します。ここに”301″と表示されていれば、そのURLには301リダイレクトが適用されていることが確認できます。

301リダイレクトを行う際の注意点

301リダイレクトを設定する際には、いくつかの重要な注意点があります。これらの注意点を理解し、適切に対応することで、リダイレクトの設定ミスを防ぎ、ウェブサイトのユーザビリティとSEOのパフォーマンスを維持することができます。

内部リンクの変更が必要

301リダイレクトを設定すると、旧ページから新ページへの自動的なリダイレクトが行われます。
しかし、ウェブサイト内の他のページから旧ページへのリンクが存在する場合、そのリンクも新ページへのリンクに更新する必要があります。

これにより、ユーザーが不必要にリダイレクトを経験する(一瞬の遅延が生じる)のを防ぎ、ウェブサイトのユーザビリティを向上させることができます。
また、内部リンクの更新は、検索エンジンがウェブサイトの構造を正しく理解するのにも役立ちます。

環境によっては動作しない可能性がある

301リダイレクトの設定方法は、ウェブサーバーの種類や設定によって異なります。

たとえば、ApacheサーバーとNginxサーバーでは、リダイレクトの設定方法が異なります。また、一部のウェブホスティングプロバイダーでは、ユーザーがリダイレクトを設定するためのアクセス権限を制限している場合もあります。

そのため、リダイレクトを設定する前に、自分のウェブサーバーの環境と制限を確認し、適切な設定方法を選択することが重要です。

サーチコンソールで指摘される

Googleのサーチコンソールは、ウェブサイトのパフォーマンスや問題を確認するためのツールです。サーチコンソールでは、301リダイレクトが正しく設定されていない場合や、リダイレクトによって問題が発生している場合に警告を表示します。

たとえば、リダイレクトループ(ページAがページBにリダイレクトし、ページBが再びページAにリダイレクトするなど)や、存在しないページへのリダイレクトなどが指摘されることがあります。これらの警告を定期的に確認し、必要に応じてリダイレクトの設定を修正することが重要です。

後でリダイレクトを解除する場合は要注意

301リダイレクトは「永続的なリダイレクト」を意味します。
つまり、一度設定すると、検索エンジンはそのリダイレクトを永続的なものとして認識します。
そのため、後でリダイレクトを解除し、旧ページを再度使用する場合には注意が必要です。

リダイレクトを解除した後も、検索エンジンが新旧のページを正しく認識するまでには時間がかかることがあります。
また、リダイレクトを頻繁に変更すると、検索エンジンがウェブサイトの構造を正しく理解できなくなる可能性もあります。

301リダイレクトに関するよくある質問

ここでは、301リダイレクトに関するよくある質問を解説しています。不明点があれば、あらためて記事を読み返してみてください。

301リダイレクトをしないとどうなりますか?

301リダイレクトを設定しないと、ユーザーや検索エンジンが旧ページにアクセスしたときに新ページに自動的にリダイレクトされません。
これにより、ユーザーは存在しないページや更新されていないページにアクセスする可能性があり、ウェブサイトのユーザビリティが低下するとともに、SEOのパフォーマンスに影響を与える可能性があります。

301リダイレクトをするための記述はどうすれば良いですか?

301リダイレクトの設定方法は、ウェブサーバーの種類や使用しているプラットフォームによります。
本ページの「301リダイレクトの設定方法」で詳しく解説しているので、ご確認ください。

301リダイレクトとSEOはどのような関係がありますか?

301リダイレクトは、旧ページのSEOの評価を新ページに引き継ぐ役割があります。これにより、新ページが旧ページと同じSEOの価値を維持できます。
また、301リダイレクトは、重複コンテンツの問題を防ぐためにも使用されます。
これらの理由から、301リダイレクトはSEO戦略の一部として非常に重要です。

301リダイレクトを正しく設定して損失を防ごう!

本記事では、301リダイレクトの重要性とその設定方法について詳しく説明しました。
301リダイレクトは、ウェブサイトのユーザビリティを保つだけでなく、SEOのパフォーマンスを向上させるための重要な手法です。正しくリダイレクトを設定し、SEOのパフォーマンスを最大化しましょう。

今回解説した301リダイレクトの他、SEO対策では多くの専門的な知識が必要になります。自信がない場合はプロに依頼することをお勧めします。
HowcrazyではSEO対策のコンサルティングの他、運用支援を行っています。SEO対策でお困りの方は、ぜひご相談ください。