【SEO】URLを正規化! 重複コンテンツを防ぐ、たった1行のコード
皆さんの持っているブログやホームページはURL正規化をしていますか?
特に対策を取っていない場合、あなたのページがGoogleに重複ページとしてインデックスされているかもしれません。
Googleに正しいページをインデックスしてもらうために、URLの正規化するコードをページに入れておきましょう。
rel="canonical"によるURL正規化
同じページなのにURLが少し違うというだけで、Googleには重複ページとしてインデックスされます。
例えば、サイトからリンクで飛んだ時にURLにパラメータが付いていることありませんか?
http://example.com/widgets?color=red
赤字の部分がパラメータです。
http://example.com/widgets
正しいページがこちらです。
このパラメータが付いているというだけで、この2つのURLはGoogleに重複ページとして判断されてしまいます。同じページなのに、それでは困りますね。
また、これだけでなく、wwwの有無や、http/httpsの違いなどで重複ページは起こってしまいます。
- example.com
- www.example.com
- www.example.com/
- www.example.com/index.html
例えば、この4つのURLは同一コンテンツを指しているにもかかわらず、重複ページとして検索エンジンに判断されます。
Googleは重複ページとみなしたページが複数あった場合、Googleの判断でその内の1ページしかインデックスしないという特徴があります。そのため、場合によっては、正しいページがインデックスされず、重複ページがインデックスされてしまうというケースが発生します。
これを防ぐにはどうすればよいのでしょうか?
検索エンジンの重複ページ対策
検索エンジンに正しいページを教えることで重複ページを防ぐことが出来ます。
rel="canonical"を指定することで、検索エンジンにインデックスしてほしいページを指定できます。
rel="canonical"属性はGoogleが推奨している方法です。重複ページを防ぐためにも導入しておきましょう。
<head>タグ内に、以下のように1行追加します。
<link rel="canonical" href="http://example.com"/>
http://example.comの部分にはGoogleにインデックスしてほしい正しいページのアドレスを入力して下さい。
この指定を各ページにしておくことで、それぞれのページで正統なURLを指定出来ます。これによって、重複ページとしてインデックスされていたページが別のページとみなされにくくなります。
サービスによってcanonicalに対応していないところもあると思いますが、検索エンジン大手Google、Yahoo!、Microsoftは導入しているのでやっておいて損はないでしょう。
唯一の正しいURL、カノニカルリンク? | エンタープライズ | マイナビニュース
このcanonicalのコードですが、知名度が低いのか、導入して重複ページ対策しているサイトのほうが少ないようです。
ソーシャルメディアでシェアされるリンクのURLには無駄なパラメータが付いていることが多いので、重複ページとしてインデックスされないように対策をしておくことをおすすめします。
なお、Bloggerブログでは自動でこのコードが挿入されるようです。