301リダイレクトとは何か
301リダイレクトとは、URLが恒久的に変更される場合に使用される転送処理のステータスコードのことです。
これはサイトが移転しても、検索エンジンのクローラーやアクセスをしてきた訪問者に対して、移転後の正しいURLを伝えるための手段でもあります。
類似しているステータスコードとして、302リダイレクトがありますが、こちらは恒久的ではなく、「一時的な」転送を指すものです。そのため、新しいコンテンツがインデックスされても、URLが古いままなので、使用時には注意が必要です。
301リダイレクトが使われるケースとは?
301リダイレクトが使用されるケースは大きく分けて2つあります。
①サイトのドメイン・URL自体が変更になる場合
サイトの移転時やブログのリニューアルなどに伴い、ドメインやURLそのものが変更される場合に使用されます。
②URLを正規化する場合
重複コンテンツなど、異なるURLで展開されている同一のコンテンツを1つにまとめる場合に使用されます。
重複コンテンツの例としては、www有・無しの両方が存在している場合や、TOPページなどのURLに、「/?m=header_menu_pc」や「index.html」などです。
例えば、ECサイトの絞り込みページで表示条件を「安い順」「高い順」などに切り替えられますが、その際にコンテンツの内容が同じでも絞り込み条件により異なるURLが生成され、同じ内容のコンテンツが異なるURLで存在することになってしまいます。
これらのようなページを1つのページに統一することで低品質コンテンツの発生を防ぐことができるのです。
SEOにおける301リダイレクトの効果
301リダイレクトのSEO効果は、移転する前のURL(ドメイン)が持っていた被リンクの評価を転送先に引き継ぐことです。これによって、新ドメインに移転後も、以前から持っていた評価を失わずに済みます。
以前は301リダイレクトがスパム対策で利用されていたことがあったため、「301リダイレクトでは評価を引き継がれず、ページランクが失われる」とされていました。
しかし、2016年7月にGoogle社員から「301リダイレクトによって、評価が失われることはない」と発表されました。
「2016年7月26日 GoogleオフィスアワーでのJohn Mueller氏の発言」
「Gary Illyes氏のTwitter」
ですが、持っていた評価がそのまま全て引き継がれるわけではなく、移転後に一定数の流入が減少する場合もあります。
リダイレクトが完了する期間もサイトの種類・規模によって異なり、2週間~数か月など一定の期間がかかりますが、Googleの公式発表によると一般的には「2、3週間?4、5週間、ともすると2ヶ月くらい」かかるようです。
「2011年3月16日のMatt Cutts氏の発言」
301リダイレクトの設定方法
ここでは、301リダイレクトの設定について2通りの記述方法を紹介します。
①.htaccessファイルで設定
この場合の記述方法は下記の通りです。
<記述例>
Options +FollowSymLinks
RewriteEngine on
RewriteCond %{THE_REQUEST} ^.*/移転前のURL
RewriteRule ^(.*)移転前のURL $ 移転後のURL$1 [R=301,L]
<http://abc1234.jp/index.htmlを、index.html有りから無しに正規化する場合>
Options +FollowSymLinks
RewriteEngine on
RewriteCond %{THE_REQUEST} ^.*/index.html
RewriteRule ^(.*)index.html$ http://abc1234.jp/$1 [R=301,L]
②Redirect permanentで記述
この場合の記述方法は下記の通りです。
<記述例>
Redirect permanent 新ドメイン 移転前のURL
<http://abc1234.jp/index.html から、新ドメインのhttp://abc1234.jp/に移転する場合>
Redirect permanent /abc1234.jp/ http://abc1234.jp/index.html
.htaccessファイルが利用できない場合は?
PHPプログラムによる対応
この場合の記述方法は下記の通りです。
<記述例>
<新ドメインであるhttp://abc1234.jp/に移転する場合>
canonicalでの代用
rel=”canonical”を使って、複数のURLの中から優先すべきページを指定する方法です。
しかし、あくまでもこれは「こっちのページに行ってもらえませんか?」という「Googleへの提案」になりますので、必ずしもその通りになるとは限りません。
この場合の記述方法は下記の通りです。
<記述例>
<新ドメインであるhttp://abc1234.jp/に移転する場合>
設定上の注意点として、301リダイレクトはページ単位で設定しなくてはなりません。
ページ単位で全てのページを設定しないと、サイト移転を認識されないので、全体の一部のみをリダイレクトをしても意味はありません。
まとめ
今回はサイト移転時の転送処理について、様々な方法を紹介しました。
サイトの規模やサーバーの仕様によっても、設定方法は変わってきますが、基本的に301リダイレクトでの設定をおすすめします。
サイト移転時には多くのSEO要素を考慮しながら進めていくことが大事ですが、移転時のリダイレクト処理についても、自分たちのサイトにとって一番有効な方法を考えることが重要となります。