Googleは、かねてからアナウンスしていたように、ドメインをまたぐrel=”canonical”タグのサポートを開始したことを公式アナウンスしました。
※ rel=”canonical”タグって何?、何のために使うの? という読者さんは、まずこちらからお読みください。
もともと、rel=”canonical”タグは、同一ドメインまたはサブドメインの中だけで有効でした。
”www.example.com”と”example.com”を正規化することはできましたが、
”www.example.com”と”www.example123.com”を正規化することは、できなかったのです。
301リダイレクトでの正規化やrobots.txtでの重複コンテンツの予防ができないサイトにとっては、非常に喜ばしいニュースです。
また、違うドメインで同じコンテンツを提供したい、でも重複コンテンツ問題を引き起こしたくないという時にも利用できますね。
クロスドメインをサポートしたということは、不正利用の対策も十分ということなのでしょう。
ドメイン間でのrel=”canonical”タグのサポートについて、公式アナウンスにQ&Aが出ているので解説します。
Q: ページ同士は同一でなければなりませんか
A: いいえ、多少の違いは容認されます。
⇒ たとえば、商品一覧のページで、金額の高い順に並べ替えたときと安い順に並べ替えたときは、URLは異なりますが、中身自体は同じですよね。
Q: 技術的な理由で、URLの1対1の割り当てができません。優先したいURLとして、すべてホームページを指定することはできますか。
A: いいえ。問題が起きそうです。古いURLと新しいURLをそれぞれ対応させるのが、ベストな使い方です。
⇒ rel=”canonical”は“同じコンテンツ”だけれども、URLが違うページをまとめる仕組みです。リダイレクトではありません。
Q: 自分のサイトのコンテンツを、他のサイトにも配布しています。それらのサイトで、rel=”canonical”タグを使ってもらう必要はありますか。
A: お任せします。コンテンツが十分に同じで、両者が同意するなら使った方がいいでしょう。
⇒ 勝手にコンテンツを盗むスクレーパーにも、お願いしたいものです。w
Q: サーバーで301リダイレクトが使えません。サイトの移転にrel=”canonical”タグを使えますか。
A: もし可能ならば、301リダイレクトを使うべきです。Googleは、rel=”canonical”を“ヒント”として扱うことに注意してください(他のサーチエンジンは違う扱いをするかもしれません)。でも、何らかの事情で301リダイレクトが無理なときは、rel=”canonical”タグが機能するでしょう。
⇒ 301リダイレクトは、URLの転送を目的とした定められたHTTP通信の共通の仕様なので、従うように設計されるべきです。しかしrel=”canonical”をどう処理するかは、Googleの判断なのです。
Q: rel=”canonical”タグを記述したページにnoindex. robotsタグを使うべきですか。
A: いいえ。インデックスという観点からするとそれらのページは対等ではありません。片方はインデックスされるし、もう片方はブロックされます。またこれらのページのクローリングをrobots.txtで拒否してはいけません。拒否してしまうと、サーチエンジンのクローラは、rel=”canonical”のリンク要素を発見できなくなります。
⇒ アクセスを禁止したページにrel=”canonical”を書いても、見てもらえないから意味がないですね。インデックスされた重複コンテンツを束ねるのが、rel=”canonical”なので余計なことはしないように。
クロスドメインでのrel=”canonical”サポートは、活用するケースが出てきそうですね。
ただ問題は、Googleしかサポートしていないということです。
Yahoo!やBingは、ドメイン内のrel=”canonical”を完全に処理しきれているかも怪しいところです。
P.S.
よく質問を受けるので、サイト公開時に済ませておく正規化とrel=”canonical”タグについてまとめた記事を、近いうちに書こうかと思います。
「rel=”canonical”を入れたんですが、URLがそのままなんです。」みたいなのを、よくいただきます。
rel=”canonical”タグは、検索エンジンが(内部的に)301リダイレクト相当の扱いをするだけで、人間にとっては何も発生しません。
ご質問があれば、コメントへ。