Googleから正当にサイトを評価してもらおう
Googleでは内容が重複するページがある場合、「グーグルウェブマスターツールの解説」にある通り「URLの正規化」を薦めています。
FC2ブログが非常に厳しいペナルティを受けて話題になりましたが、URLを正規化して対策をしましょう。
重複するページとして認識された場合のデメリット
1.ページの重要度が分散する
本来であればリンクやアンカーテキストで加算されるはずのページの重要度が複数のページに分散してしまいます。結果として上位表示されにくくなります。
2.インデックスされない
重複コンテンツと判断されると、そのうちのどれか1ページだけがインデックスに登録されます。そのため検索結果に意図したページが表示されません。
3.ペナルティを受ける
同じような内容のページを大量に作り、特定の内容を詳しく解説しているかのように見せかける、「ブラックハットSEO」と判断されて「ペナルティ」を受ける場合があります。
正規化が必要な状況
上記デメリットを受けないために、URLの正規化が必要な状況を確認します。
「wwwあり」と「wwwなし」のURL
Googleでは「wwwあり」のhttp://www.example.com/と、「wwwなし」のhttp://example.com/を別のページと認識します。
システム上、重複して作られるページ
例えばECサイトの場合、同じ商品の色違いで別ページを作るとほとんどの内容が重複するため、Googleは重複コンテンツ(もしくはバージョン違い)と判断します。
他にもプリント用のページを用意している場合、多言語で異なるページを作成している場合など、システム上どうしても重複するページが出る場合があります。
このように意図していなくてもURLの正規化が必要になることがあります。
このページではこれらの状況に対応する正規化の方法をまとめました。それぞれ状況に合わせて最適な方法で正規化を行なってください。
「.htaccess」を利用したURLの正規化
「.htaccess(ドットエイチティアクセス)」という設定ファイルでリダイレクト(転送)させる方法です。wwwありとwwwなしのページをどちらかに統一する場合によく利用されます。
リダイレクトでよく利用するのは、永久的に転送する場合に利用する「301リダイレクト」と、一時的に転送する場合に利用する「302リダイレクト」です。
「301リダイレクト」はサイトの引越し時や今回のようなURLの正規化に利用します。
「302リダイレクト」はメンテナンスで一時的に別のサーバへ転送する場合などに利用します。
「.htaccess」の設定方法
「.(ドット)」から始まるファイル作成するには手間がかかるため、「hoge.htaccess」と名前を付けて、FTPでサーバにアップロードしてから、サーバ上でリネームしてください。既にサーバに「.htaccess」が存在する場合はダウンロードして以下のコードを追記してください。
wwwなしで統一する場合
「http://www.example.com」にアクセスした場合に「http://example.com」へリダイレクトする設定。example.comの部分は自分のドメインに合わせて変更してください。
Options +FollowSymLinks RewriteEngine on RewriteCond %{HTTP_HOST} ^www\.example\.com RewriteRule ^(.*)$ http://example.com/$1 [R=301,L]
wwwありで統一する場合
「http://example.com」にアクセスした場合に「http://www.example.com」へリダイレクトする設定。
Options +FollowSymLinks RewriteEngine on RewriteCond %{HTTP_HOST} ^example\.com RewriteRule ^(.*)$ http://www.example.com/$1 [R=301,L]
ファイルをアップロードできたら「こちらのサイト」でリダイレクトしているかチェックできます。
ちなみにこのサイトではwwwなしのhttps://oxynotes.com/で統一しています。
ウェブマスターツールの「使用するドメイン」で設定する方法
ウェブマスターツールにある「使用するドメイン」でも、wwwありとwwwなしのドメインを統一することができます。
まずは「サイトの追加」ボタンをクリックしてwwwなしのサイト(http//example.com)を登録してください。
続いてサイトの所有権を確認するために、「Google指定のファイル」をダウンロードしてルートディレクトリ(サイトの公開ディレクトリの一番上のフォルダ)に保存します。保存できたら「確認ボタン」をクリックしてください。
「http//example.comの所有権が確認されました。」と表示されればサイトの登録は完了です。
同じ手順でwwwありのサイト(http//www.example.com)も登録してください。
両方登録できたら、どちらかのサイトをクリックして「設定 > 設定」をクリックして「使用するドメイン」で統一したい方のURLにチェックを入れます。(画像の例はwwwなしに統一する場合)
wwwあり・なしの両方を登録しないと以下のエラーが出て登録できないので注意してください。
「使用するドメインを設定する場合は、http://www.example.com/ の所有権を確認してください。http://www.example.net/ を確認してください。」
canonicalを利用してURLを正規化する方法
「canonical(カノニカル)」をページに指定する方法です。カノニカルとは正規化の意味で、重複したページに優先させたいURLを記述することで、優先順位を指定します。あらかじめ重複するページがわかっている場合は、この方法がお勧めです。
設定方法
例として日本語版「http://example.com/ほげ」と英語版「http://example.com/hoge」がある場合、日本語版の優先順位を上げる方法を解説します。
日本語版の優先順位を上げたい場合は「英語版のページ」の「<head>~</head>」の間に以下のコードを追加します。
<link rel="canonical" href="http://example.com/ほげ"/>
こうすることで上で設定した「301リダイレクト」で「http://example.com/ほげ」に転送したのと同じ扱いになります。そのためページの重要度は全て「canonical」で指定したページに引き継がれます。
この重要度が引き継がれることを利用して、有名な投稿サイトでbody内に「canonical」を追加しても全く意味が無いことが実証されています。 また特定のページを上位に持っていくために重複していないコンテンツで「canonical」を記述するのは禁止されています。 もしも似たような手法でリンクジュースが得られたとしても、このような小手先のブラックハットSEOはGoogleの最も嫌うところなので、必ず対応されます。 パンダアップデートの際に、機械的なリンクでペナルティを受けたサイトが大量に出たという教訓から学ぶべきです。
HTTPヘッダーでcanonicalリンクを指定する方法
HTTPヘッダーを編集するにはサーバの管理者権限が必要で、メンテナンス性を考えるとあまり現実的でない方法です。Googleの解説では以下のようにすると設定できると解説しています。
設定方法
Link: <http://www.example.com/downloads/white-paper.pdf>; rel="canonical"
ウェブマスターツールでサイトマップを送信する方法
Googleへサイトマップを送信することで正規化を行う方法です。通常サイトマップに全てのページを登録して送信しますが、重複するコンテンツをサイトマップから削除します。そうすることで、送信されたURLの重要度を上げることができます。
この方法はシステムの変更を行えない場合に有効な方法です。
タグやカテゴリ、月別のアーカイブページなど、似たような構成のページが大量に作成されるCMSの場合は、あえてそれらのページをサイトマップに登録しないことで、他のページの優先順位を上げることができます。
設定方法
SEOをするにあたってサイトマップの送信は基本です。正規化の有無にかかわらず、登録しておくことをお勧めします。ウェブマスターツールのメニューから「最適化 > サイトマップ」で追加することができます。
リンクの記述法における「相対リンク」と「絶対リンク」
せっかくURLの正規化を設定したので、サイト内でリンクを記述する場合にも正規化を念頭に置いて記述するようにしてください。また、canonicalの指定やリンクの記述には絶対リンクが推奨されています。
相対リンクは「./hoge.html」と省略する記述法で、
絶対リンクは「http://example.com/hoge.html」と省略せずに記述する方法です。
Googleではウェブマスターツールの解説
で
可能な場合は、相対リンクではなく絶対リンクを使用します
と絶対リンクを推奨しています。
とても参考になりました。
一点ご質問なのですが、サーチコンソールにはwww有り無しを登録しますが、サイトマップの送信は、正規化した方のアドレスのみの送信でよいのでしょうか?
正規化されたものだけを送信してください。
両方送信しても正規化していれば問題ないと思いますが
もし重複コンテンツだと認識されればペナルティを受けます。