canonicalがすべてわかる
目次
canonicalとは
canonicalとは直訳すると”規準的な”や”標準的な”といった意味を持つ単語です。Webサイトにおいてcanonical属性は、ページ内容が類似していたり重複しているURLが複数存在する場合に、検索エンジンに対して正規のURLがどれなのかを伝えるために利用されます。
正規のURLを検索エンジンに伝えることで、検索エンジンからの評価の分散を防ぐことができます。
URLの正規化を行うためのタグ
類似しているページのURLを正規化する
ECサイトなどではよくあるパターンとして、同じ商品のデザインバリエーションやカラー・サイズ違いごとにそれぞれ別ページを用意していることがあります。
しかし、実際のコンテンツの中身としての違いは、商品写真が若干異なるだけだったり、カラーやサイズなどの一部のコンテンツが異なるだけで、全体的なページの内容にはほとんど変化がないということがほとんどです。
実は、こういったケースでも検索エンジンは重複ページであるという判断をしてしまいますので、canonical属性を使ってひとつのページにURLを正規化しておく必要があります。
重複しているURLを正規化する
検索エンジンは、同じページを表示させるURLが複数存在する場合にでも、URLが1文字でも異なれば、別のページとしてインデックスを行います。
例えば、下記のようにどのパターンでアクセスしても同じページに繋がりますような場合です。
- http://296.co.jp/
- http://www296.co.jp/
- https://296.co.jp/
- https://www.296.co.jp/
- https://296.co.jp/index.php
- https://296.co.jp/#
ユーザーからすれば、どのURLでアクセスするかなんていうことはほとんど考えていないと思います。
しかし、検索エンジンは、それぞれの異なるURLをひとつひとつ別のページというように認識していますので、別ページなのに内容が同じということは、つまり、重複コンテンツやミラーコンテンツなのではないかと判断されてしまうことになります。
このような場合には、自己参照canonicalといって、そのページ自身に自己の正規URLがどのURLなのかを検索エンジンに伝える役目を担います。
canonicalが必要な理由
canonical属性タグを使ってURLの正規化が必要な理由は、ペナルティ回避と評価の分散を防ぐことにあります。
ひとつのページなのにURLが複数存在していると、それぞれ別ページとして検索エンジンにインデックスされるため、ページへの評価が分散されます。
また、最悪なケースとしては、重複コンテンツやミラーコンテンツと判断されたことでペナルティ措置を受け検索結果に表示されないなどの事態を招き、サイト全体の評価が下がってしまう可能性もでてきます。
301リダイレクトとの違い
重複コンテンツを防ぐ時に行われるSEOの内部施策としては、301リダイレクトというものもあります。
これは、アクセスしてきたページが複数のURLをもつ場合に、強制的に正規化したいURLに転送するという措置です。
当社のトップページは「wwwありとwwwなし」や「http://とhttps://」など、どのURLでアクセスしてもhttps://296.co.jpに強制転送させるように301リダイレクトの設定をしています。
canonicalの使い方
<head>
と</head>
の間に下記のコードを記述します。
<link rel="canonical" href="正規化させたいURL">
絶対パスで記述
正規URLは、必ず絶対パスで記述します。
絶対パスについては下記の記事をご覧ください。
可能ならできるだけソース上部への記述を推奨
検索エンジンのクローラーはソースの上からコードを読んでいきます。
そのため、canonicalタグが上部にあればあるほど、早い段階でURLの正規化処理をしてくれますので、<head>
と</head>
の間でもなるべく上位に記述しましょう。