COLUMNコラム

301リダイレクトとは?設定方法や注意点も解説!

ライティング

会社が移転した際、移転先の情報を取引先や顧客に伝えなければ連絡が取れず、ビジネスチャンスを失ってしまいます。同様のことがWEBサイトにも言えるのです。

WEBサイトのURLを変更したら、ユーザーや検索エンジンが移転先に遷移できるようリダイレクトさせる必要があります。

この記事では代表的な301リダイレクトの基礎や302リダイレクトとの違い、設定方法や注意点などについて解説します。

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

301リダイレクトの概要と、302リダイレクトとの違いの2点を説明します。

301リダイレクトとは

301リダイレクトとは、アドレスに変更した際に、処理コード301 Moved Permanentlyを返すための転送処理のことです。Googleの公式もガイドラインでも推奨されています。

301リダイレクトをしないと、検索エンジンからの評価が下がり、閲覧数やブックマーク数が減ってしまうので気を付けてください。

302リダイレクトとの違い

301リダイレクトと302リダイレクトとの違いは転送期間です。301リダイレクトは恒久的な転送を表し、新しいアドレスへSEO評価を引き継ぐことができます。

302リダイレクトは一時的な転送を表し、新しいアドレスへSEO評価を引き継げません。WEBサイトの移転時は301リダイレクト、メンテナンス等の一時的な閉鎖やPCページからスマートフォンページへの移動などは302リダイレクトを使用します。

301リダイレクトと302リダイレクトは適切に使い分けなければ、UXやSEO評価の低下につながるリスクがあるので注意が必要です。

なぜ301リダイレクトを行う必要があるのか

ここでは、301リダイレクトを行うべき理由を4つ紹介します。

旧URLのSEO評価を新URLに引き継ぐため

301リダイレクトの設定によって、SEO評価を新しいURLに引き継ぐことができます。

301リダイレクトをしないと、元サイトの評価は失われ検索順位が大きく下がります。検索エンジンからのアクセス数も減ってしまうでしょう。WEBサイトは運営期間が長いほどSEO評価が蓄積されます。そのため、URLの変更時には301リダイレクトを忘れないようにしましょう。

無駄なクロールの発生を防ぐため

301リダイレクトをしないと、存在しない旧URLのページがクロールされ、大量のエラーページが発生します。

クロールのリソースが存在しないページに浪費されるため、301リダイレクトは欠かさず行いましょう。

新サイトのインデックスが遅れるのを防ぐため

301リダイレクトを設定しないと、新旧両方のページがクロールされるため新サイトのインデックスが遅れます。コンテンツが多ければ、その分インデックスまでの期間が空いてしまうでしょう。

新サイトのインデックス作業をスムーズにするためにも、301リダイレクト設定は重要です。

ユーザーを新URLに誘導するため

301リダイレクトをしなければ、ユーザーを新しいページへ誘導できません。ページを開いてもエラー表示となれば、ユーザーは離脱してしまいます。

ページがブックマークされていても、エラーになれば二度と見てもらえなくなる可能性もあるでしょう。移転後のサイトURLを記載していても、アクセスしてもらえるかは不確実です。

301リダイレクトを設定しておけば、自動的に新URLにジャンプします。そのため、ユーザーにストレスを与えず機会損失を防げるでしょう。

301リダイレクトの設定が必要となるケース

301リダイレクトの設定が必要となるケースは主に4つあります。

  • サイトを移転/ドメインを変更するケース
    sample.comからexample.comに変更する場合、sample.comを削除すると、このURLにある記事は読めなくなります。301リダイレクトを使用すると、 sample.comのユーザーを新URL example.comに誘導できます。
  • サイトのURLを変更するケース
    example.com/kiji/01からexample.com/article/01のようにURLを変える場合も、301リダイレクトを使用します。両ドメインで同じ内容の記事を同時に公開した場合、1つを削除するのではなく、301リダイレクトを設定します。
  • SSL化を行うケース
    常時SSL化を行うことで、httpsで始まるURLとhttpで始まるURL2がつ存在することになります。301リダイレクトを設定してhttpsに集約させましょう。
  • URLの正規化をするケース
    異なる2つのURLでアクセスできる場合は、重複コンテンツとなりSEO評価が下がります。このような場合には301リダイレクトを設定して、URLの正規化を行いましょう。

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

ここでは実際に301リダイレクトの設定方法を紹介します。

ドメイン単位で転送する方法

WEBサイトのリニューアルで、www.example-abc.comからwww.example-def.comにドメイン名だけが変更されたとします。

この場合、www.example-abc.comのドメインをwww.example-def.comのドメインへの転送が必要です。具体的には、.htaccessファイルの内容を変更します。htaccessファイルとは、サーバーの基本的な動作をディレクトリ単位で制御するためのファイルです。RewriteEngine onという宣言文を使用する方法と、Redirect Permanentという宣言文を使用する方法の2種類があります。

  • RewriteEngine onの宣言文を使用する方法
    RewriteEngine on
    RewriteCond %{HTTP_HOST} ^(www.example-abc.com)(:80)? [NC]
    RewriteRule ^(.*) https://www.example-def.com/$1 [R=301,L]
  • Redirect Permanentの宣言文を使用する方法
    Redirect permanent / https://www.example-def.com/

どちらかを記述した.htaccessファイルをサーバにアップロードします。アップロード完了後、https://www.example-abc.com/articleにアクセスして転送されhttps://www.example-def.com/articleのarticle部分がファイル名やディレクトリ名が変わらずに表示できていればドメイン単位の転送は出来ていることになります。

ページ単位で転送する方法

https://example.com/abc.html と https://example.com/def.htmlが重複コンテンツになるときは、一つのページに評価を集約させましょう。例えば、https://example.com/abc.htmlに集約させるときは、https://example.com/def.htmlのページをhttps://example.com/abc.htmlに転送します。

この場合、.htaccessファイルを次のように記述します。

RewriteEngine on
RewriteRule ^/def.html$ https://example.com/abc.html [R=301,L]

.htaccessファイルをサーバにアップロードして、https://example.com/def.htmlにアクセスし、301リダイレクトされたページがhttps://example.com/abc.htmlになっていればページ単位の転送は成功です。

ディレクトリ単位で転送する方法

ディレクトリ単位で301リダイレクトを設定する方法もあります。

例えば、https://example.com/kiji/001.htmlをhttps://example.com/article/001.htmlのように、ディレクトリ名をkijiからarticleに変更するとします。このとき、ディレクトリ名だけ変更して転送する処理が必要です。

この場合も.htaccessファイルを次のように記述します。

RewriteEngine on
RewriteRule ^kiji(.*)$ /article$1 [R=301,L]

.htaccessファイルをアップロード完了後、https://example/kiji/001.htmlにアクセスし、ジャンプしたページのディレクトリが変更されていればディレクトリ単位の転送は成功です。

SSL化に伴って転送する方法

セキュリティ向上のため、SSL化してhttpからhttpsに変更したとします。この場合も、httpからhttpsへの転送が必要です。

.htaccessファイルを下記のように編集します。

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

.htaccessファイルをアップロード後、httpからhttpsへ転送され、全てのページがhttpsへ転送されればSSL化に伴う転送は成功です。

WordPressのプラグインを使って転送する方法

WordPressで301リダイレクトをする方法もあります。

WordPressでサイト構築をしており、重複コンテンツをつのページに集約したいとします。

具体的な方法としては、まずWordPressのプラグインであるRedirectionをインストールし有効化しましょう。その後、Redirectionの設定画面から「転送ルール」の下にある「新しい転送ルールを追加」で「ソースURL」に転送元のURLを、「ターゲットURL」に転送先のURLを記入し「転送ルールを追加」ボタンを押します。

転送元のURLにアクセスしたとき、転送先のURLに転送されたページが表示されれば成功です。

301リダイレクトを確認しよう

301リダイレクトの確認方法を紹介します。ここでは、無料のリダイレクトチェックツール「ohotuku.jp」を紹介します。

使用方法は簡単で、転送元の旧URLを入力し「チェックする」をクリックするだけです。そのため、301リダイレクトが適切に行われているか瞬時に確認できます。

301リダイレクトを設定する際の注意点

ここでは、301リダイレクトを設定する際の注意点を紹介します。

適用されるまで時間がかかる

301リダイレクトを行うと、URLは即時に転送されます。

しかし、検索エンジンの評価を引き継ぐには数週間から数か月かかるでしょう。評価の引継ぎが長引く場合、検索順位が下がってしまう可能性が高いです。

コンテンツ数が多いWEBサイトのドメイン変更やサイト移転を行う場合、SEO評価が適用されるまで時間がかかることに注意が必要です。

不正なリダイレクトは厳禁

通常の転送では問題ありませんが、検索ユーザーの端末で意図とは異なるWEBページにリダイレクトをかけるスパム行為やPCユーザーには通常のページが表示されるがモバイルユーザーには全く別のスパムドメインにリダイレクトをかける行為は不正なリダイレクトとされます。

不正なリダイレクトを行ったWEBサイトには、ペナルティが課せられる可能性があるので注意してください。

meta refreshタグは評価の引き継ぎが出来ない恐れがある

HTMLタグである meta refreshタグは、301リダイレクトと同様に新URLへの転送機能を持ちます。

しかし、meta refreshタグを使用したリダイレクトはGoogleで推奨されていません。そのため、設定してもSEO評価が引き継がれない可能性があります。

robots.txtの記載を削除しておく

robots.txtは、設定したURLをクロールしないようにするためのファイルです。301リダイレクトを設定しても、robots.txtの記載によってクロールされずリダイレクトが進まないケースがあります。

リダイレクト時にはrobots.txtの記載を削除し、全てのURLをクロールできるようにしておきましょう。

新旧のサイトでXMLサイトマップを用意する

新旧のサイト両方でXMLサイトマップを用意しておくことで、リダイレクトが検出されやすくなりスムーズなサイト移管が可能です

旧サイトのXMLサイトマップはインデックス数が減り必要なくなったタイミングで削除しましょう。

サイト内のURL記述の変更を忘れずにする

301リダイレクトを設定後は、サイト内のURL記述の変更を忘れないようにしましょう。

設定する際には、内部リンクやcanonicalタグ、alternateタグ、構造化データで使用しているURL記述の変更も忘れないでください。特に、canonicalタグの未変更は正規URLの認識に悪影響を及ぼすため、必ず対応しましょう。

関連性の薄いページへのリダイレクトは避ける

ある記事ページからトップページへのリダイレクトなど、関連性の薄いページへの301リダイレクトは行わないでください。このようなリダイレクトはSEO評価を低下させ、検索順位が下落する要因になります。

新しいサイトで該当するWEBページがない場合は、404コードの使用やコンテンツが類似するページへのリダイレクトを検討しましょう。

まとめ

この記事では、301ダイレクトの基礎知識と設定方法、注意点などを解説してきました。サイトの移転時などに301リダイレクトを行えば、SEO評価を引き継ぐことができます。

301リダイレクトの未設定や、誤ったリダイレクトをした場合、サイト評価が落ち検索順位の下落にもつながります。

この記事を参考に、適切な301リダイレクトを設定しましょう。