link要素「rel="canonical"」のまとめ

link要素「rel="canonical"」のまとめ

Posted at August 16,2012 12:55 AM
Tag:[canonical, HTML, link]

link要素のrel="canonical"について調べてみました。

canonical

以下、主にGoogleの「rel="canonical" 属性について」の記載を引用しながら、FAQ形式で書いていますが、認識誤りがありましたらどこかでつぶやいてください。

1.利用目的は?

「検索エンジンのインデックス内での重複コンテンツ問題」解消のためです。

下の図で示すURLは、同じページにアクセスしているにもかかわらず、検索エンジンでは別のURLとしてインデックスされます。

検索エンジンのインデックス内での重複コンテンツ問題
検索エンジンのインデックス内での重複コンテンツ問題

link要素の「rel="canonical"」を利用することで、URLの正規化が行われ、重複コンテンツ問題を解消します。

解消イメージ
解消イメージ

2009年2月、Google、Yahoo!、Microosftの大手検索エンジン企業が、URLの正規化に対応する共通の取り組みとして、「rel="canonical"」のサポートを開始することを発表しました。

なお、この設定がインデックスに直接反映されるわけではなく、最適なインデックスを作成するための手がかりとして利用されるようです。

2.「canonical」の意味は?

canonicalは「基準」「標準」という意味のようです。

3.canonical URLの指定方法は?

以下の2通りがあります。

1つは1項に示したように、head要素に「rel="canonical"」のlink要素を追加する方法です(下)。

<link rel="canonical" href="http://www.example.com/" />

もう1つは、レスポンスのLink rel="canonical"というHTTPヘッダーでURLのcanonicalバージョンであることを指定する方法です(下)。仕様はRFC5988参照。

Link: <http://www.example.com/>; rel="canonical"

4.閲覧ページのコンテンツとcanonicalページのコンテンツは同一でないとダメか?

コンテンツは重複している必要がありますが、記述の順番など、若干の違いは許容範囲内のようです。

Googleによると「rel="canonical" 属性は、重複したコンテンツを含む複数のページから優先ページを指定する目的のみで使用してください。」とあり、その例として、以下が挙げられています。

あるページでは製品一覧がアルファベット順で表記されているのに対し、別のページでは同じ製品を値段または評価の順番で記載している場合など
同じ種類のダンスシューズを紹介するページが複数あり、商品写真のシューズの色以外のコンテンツがすべて一緒である場合などは、1番人気がある色のページをcanonicalページに指定

この部分だけ読むと、冒頭の画像で示した、「異なるURLで同一ページにアクセスすると別インデックスされる問題」と性質が異なるように見えますが、冒頭の画像も「rel="canonical" 属性について」にある動画からの抜粋なので、対象になると思って良いと思います(動画をきちんと確認していないので、もしかしたら「冒頭の問題は既存の検索エンジンで解消済みだよ、はっはっはー」ってなっているのかもしれませんが)。

また上記より、重複していないコンテンツのcanonical URLは適正に機能しないと考えられます。例えばパーマリンクのページに、トップページのcanonical URLを指定した場合などです。

5.別ドメインのURLを指定できるか?

ネットを検索すると「別ドメイン指定では機能しない」という記載がありますが、以下ではGoogleの記載内容を引用します。

サーバーサイドのリダイレクトを作成できないウェブサーバーを使用しているときに、新しいドメイン名に移行する場合などでも利用できます。

rel="canonical"リンク要素は絶対的な指示ではなく、ヒントとしてみなされますが、Googleの場合は可能な限りこの要素を追跡します。

6.存在しないページを指定した場合は?

Googleは従来のアルゴリズムを使用して優先するページの特定を行います。

7.異なるスキームの指定は可能か?

例えば、httpによるアクセスについて、canonical URLにhttpsを指定することは可能です。

8.相対URLによる指定も可能か?

canonicalページは絶対URL/相対URLのどちらでも使用できますが、混乱や問題を避けるため、絶対リンクを推奨します。

9.複数の「rel="canonical"」のlink要素で異なるURLを記述した場合※は?

Googleは従来のアルゴリズムを使用して優先するページの特定を行います。

※「rel="canonical" 属性について」にある「複数のページが優先するページに指定されている場合」をこのように解釈しました。

10.canonical URLのチェーンは可能か?

rel="canonical" 属性の連鎖的に指定してもよいですが、確実に指定するためにはURLを直接指定してください。

11.はてなブックマークのブックマークレット動作

閲覧したページにcanonical URLが指定されていると、はてなブックマークのブックマークレット動作で、次のように「このページには別のURLが提示されています」が表示されます。

はてなブックマークのブックマークレット

で、提示されているURLが同じページでないことがこれまで結構あったので、「以下のURLに変更」を安易にクリックしないよう気をつけましょう。

関連記事
トラックバックURL


コメントする
greeting

*必須

*必須(非表示)


ご質問のコメントの回答については、内容あるいは多忙の場合、1週間以上かかる場合があります。また、すべてのご質問にはお答えできない可能性があります。予めご了承ください。

太字イタリックアンダーラインハイパーリンク引用
[サインインしない場合はここにCAPTCHAを表示します]

コメント投稿後にScript Errorや500エラーが表示された場合は、すぐに再送信せず、ブラウザの「戻る」ボタンで一旦エントリーのページに戻り(プレビュー画面で投稿した場合は、投稿内容をマウスコピーしてからエントリーのページに戻り)、ブラウザをリロードして投稿コメントが反映されていることを確認してください。

コメント欄に(X)HTMLタグやMTタグを記述される場合、「<」は「&lt;」、「>」は「&gt;」と入力してください。例えば「<$MTBlogURL$>」は「&lt;$MTBlogURL$&gt;」となります(全て半角文字)