サイトを構築していると、URLは違うけれど同一の内容を表示しているページや類似しているページが発生する場合があります。canonical(カノニカル)はこの重複ページの正規化に役立つHTMLタグです。
同一の内容のページがある場合、検索エンジンのクローラーは「重複ページ」と認識し、評価やリンクポピュラリティの分散がおこります。本記事では、canonicalの意味や正規化の方法、URL正規化が必要な理由やcanonical使用上の注意点を解説します。
canonicalとは、重複しているページや類似しているページがあるときに、検索エンジンに選択してほしいURLを伝えるためのタグです。
Googleなどの検索エンジンでは、重複したページや類似したページがある場合、そのなかの1つを「正規URL」と判断して優先的にクロールします。「正規URL」以外のページは重複したコンテンツとしてクロールの頻度を減らされてしまうため、検索結果に表示されにくくなります。
canonicalタグを活用し、どのURLが「正規URL」であるのかを明確にすると、検索エンジンはそのURLを「正規URL」としてインデックスしやすくなります。結果、重複ページや類似ページの存在による評価の分散を防ぐことが可能です。
重複ページや類似ページにより評価が分散してしまうと、せっかく良質なコンテンツを作成しても、正当な評価を得ることができません。canonicalタグはURLの正規化により評価の分散を軽減するため、ページのSEO対策における有効な手段となっています。
canonicalタグを活用したURL正規化には、主に以下の2つの方法があります。
・<link rel=”canonical”>のタグで正規化する
・HTTPヘッダーにrel=canonicalを記述する
それぞれの方法を以下で詳しく解説します。また、各方法にはメリットとデメリットがあるため、状況に合わせて使い分けていきましょう。
<link rel=”canonical”>のタグは、canonicalを使ってURL正規化をするときの一般的な方法です。例えば、以下のような重複したページがあるとします。
1https://www.example.com/contents
2https://www.example.com/contents?utm_source=Google
上記は、それぞれ同じ内容を表示するURLです。ただし、②には参照元を識別するための計測用のパラメータが加えられています。そのため、検索エンジンではそれぞれを異なるページとして認識してしまいます。
このとき、<link rel=”canonical”>のタグを使えばURLの正規化が可能です。仮に、①の「https://www.example.com/contents」を正規URLとする場合は、②のページの<head>部分に以下を記述します。
<head>
<link rel="canonical" href=" https://www.example.com/contents ">
</head>
重複ページである②に、正規URLである「https://www.example.com/contents」を指し示すタグを追加する形です。上記のようにタグを追加すると、Googleなどの検索エンジンに②のページが重複ページであり、①のページが正規URLであると明示できます。
<link rel=”canonical”>のタグのメリットは、重複ページの数に関わらず、URLの正規化が行える点です。正規URLを決めれば、重複ページが複数あっても、それぞれの重複ページに<link rel=”canonical”>のタグを記述することで正規化ができます。
<link rel=”canonical”>のデメリットは、ページサイズが大きくなる恐れがあることです。また、タグを追加できるのがHTML形式のページだけであり、PDFファイルなどのファイルの正規化には使用することができません。
PDFファイルなどを正規化したい場合には、次で紹介する「HTTPヘッダーにrel=canonicalを記述する」方法を活用します。
HTTPヘッダーとは、HTTPリクエストやHTTPレスポンスなどに含まれる情報のことです。
先述のように、HTML以外のPDFなどのファイルでは<link rel=”canonical”>タグを使用した正規化ができません。そのため、HTTPヘッダーにcanonicalを設定し、Googleなどの検索エンジンにどのURLが正規URLであるかを伝えます。
Link: <http://www.example.com/downloads/true.pdf>; rel="canonical"
上記は、HTTPヘッダーにrel=canonicalを記述した場合の一例です。
HTTPヘッダーを利用する方法は、複数の重複したPDFファイルの正規化のほか、HTMLとPDFの異なる形式で重複した内容を公開しているケースでも、URLの正規化が行えます。また、ページサイズが変わらない点もメリットです。
ただし、タグを使用する方法と比較すると設定のハードルが高く、URLの変更が多いサイトや大規模なサイトでは管理が難しい側面もあります。
canonicalでURLを正規化する主な理由は、重複コンテンツ・類似コンテンツによるSEOへの悪影響を避けるためです。ここでは、重複コンテンツや類似コンテンツが生じやすい5つの例から、URL正規化が必要な理由をご紹介します。
・動的URLによる重複コンテンツの影響を避けるため
・同一内容のページで生成される別のURLの影響を避けるため
・別のURLに同一のコンテンツが残ってしまう影響を避けるため
・別のURLで同一のコンテンツが掲載される影響を避けるため
・似たコンテンツを掲載する影響を避けるため
それぞれの内容を詳しく見ていきましょう。
動的URLとは、「?」や「&」などが含まれるURLのことです。広告やコンテンツの効果測定のため、URLに計測用のパラメータを加えた場合などが該当します。
例えば、パラメータを加えたURLには以下のようなものがあります。今回は、Google Analyticsでアクセス解析を行う場合の計測用パラメータを例にしています。
正規URL | https://www.example.com/contents |
計測用のパラメータを加えたURLの例 | ・https://www.example.com/contents?utm_source=hoge
・https://www.example.com/contents?utm_medium=hoge ・https://www.example.com/contents?utm_campaign=hoge |
「utm_source」は参照元を解析するパラメータであり、「utm_medium」は流入手段であるメディアを測定するパラメータです。URLに違いはありますが、どれも表示されるページは同じです。
ただし、検索エンジンではそれぞれのURLを別個のものと判断するため、重複ページと捉えられる恐れがあります。そこで、canonicalタグを計測用のパラメータを加えたURLのページに設定し、重複ページと判断されることを防ぐ必要があります。
システムなどの都合上、同一内容のページに対して複数のURLが生成される場合にも注意が必要です。具体的には、以下のようなパターンがあります。
正規URL | https://www.example.com/contents |
wwwありとwwwなし | ・https://www.example.com/contents
・https://example.com/contents |
httpsとhttp | ・https://www.example.com/contents
・http://www.example.com/contents |
index.htmlなしとindex.htmlあり | ・https://www.example.com/contents
・https://www.example.com/contents/index.html |
末尾にスラッシュなしとスラッシュあり | ・https://www.example.com/contents
・https://www.example.com/contents/ |
例えば、wwwのありなし、httpsとhttpなど異なるプロトコルポートのURLの生成は、異なるURLでもユーザーが同じ内容のページを閲覧できるようにするための施策ですが、検索エンジンでは別のページと認識し、重複コンテンツと判断される恐れがあります。
そのため、canonicalタグを使ってURLを正規化し、「https://www.example.com/contents」が正規URLであることを検索エンジンに示す場合があります。
なお、canonicalタグは検索エンジンに正規URLを伝えられますが、ユーザーが正規URLに遷移するわけではありません。wwwやindex.html、スラッシュの有無などで重複が起こる場合は、一般的に301リダイレクトで正規化が行われます。
canonicalタグでURLを正規化するのは、301リダイレクトを採用できない場合と覚えておくとよいでしょう。
また、同一内容のページに対して複数のURLが生成されることはあまり好ましくありません。URLを設定するときには、なるべく複数のURLが生成されないような調整が大切です。
記事コンテンツを新しいサイトに移行するとき、元URLに同一のコンテンツを残す場合があります。サイトの管理上、元URLを削除できないケースなどが該当します。
一般的に、コンテンツを移行する場合には301リダイレクトを使って新しいサイトへと転送する方法がおすすめです。ただし、301リダイレクトが採用できない場合もあります。
このような場合には、新しいサイトのURLを正規URLとし、元URLにcanonicalタグを設置しましょう。元URLとの重複を避け、評価の分散を軽減できます。
WEBサイトを構築する際には、さまざまなデバイスでコンテンツを閲覧できるように、同一のコンテンツに異なるURLを設定する場合があります。例えば、以下のような場合です。
正規URL(PCサイト) | https://www.example.com/contents |
スマホサイト用URL | ・https://m.example.com/contents
・https://sp.example.com/contents |
AMP対応URL | https://amp.example.com/contents |
ちなみに、AMPとは「Accelerated Mobile Pages」の略称で、モバイルページの高速表示に対応する手法のことを指しています。
近年、多くのユーザーがスマートフォンやタブレットなどのモバイル端末でインターネットを利用するので、上記のようなモバイル対応は欠かせない施策です。しかし、検索エンジンから重複ページと判断されるリスクがあるため、URLの正規化が必要になります。
なお、PCサイト用のページを正規URLとし、スマホサイト用URLを正規化する場合には、canonicalタグによる正規化とともに、alternate属性により2つのサイトを関連付けることが推奨されています。
alternate属性による関連付けは「アノテーション」と呼ばれるものです。アノテーションを行っておくと、検索エンジンにWEBサイト用のページとスマホサイト用のページがあること、どちらのページも重複コンテンツではないことを示せます。
ECサイトを構築する場合に多い事例ですが、UIなどの都合により、類似したコンテンツを複数公開するケースがあります。
例えば、シャツを販売しているECサイトのケースを考えてみましょう。1つの商品に複数のカラーがある場合、類似したコンテンツでカラーのみ異なるページを複数設定することになります。
正規URL | https://www.example.com/shirt |
カラーに応じたURL | ・https://www.example.com/shirt?color=white
・https://www.example.com/shirt?color=red ・https://www.example.com/shirt?color=green ・https://www.example.com/shirt?color=yellow |
各ページとも表示するシャツのカラーは異なりますが、それ以外の部分は基本的に同じ内容となるので、類似したコンテンツが表示されます。
このようなときに重複コンテンツと判断されないように、複数あるURLから正規URLを決定し、ほかのページにcanonicalタグを設定することでURLを正規化する必要があります。
ここまで紹介してきたように、canonicalはURLの正規化に役立つタグです。ただし、使用する際にはいくつかの注意点があります。主な注意点は以下の5つです。
・複数ページにまたがるコンテンツの1ページ目をcanonicalに指定しない
・相対URLをcanonicalに指定しない
・誤ったURLをcanonicalに指定しない
・body要素内にcanonicalを入れない
・別の内容のコンテンツにcanonicalを指定しない
誤った使い方をしてしまうと、URLの正規化ができない可能性があります。どのような点に注意すれば良いか、以下で具体的にご紹介します。
コンテンツを掲載する際に、複数のページに分けて掲載する場合があります。このとき、1ページ目を正規URLとし、2ページ目以降にcanonicalタグを設定しないように注意してください。
一見、1つのコンテンツを紹介しているので、検索エンジンから重複ページと判断されないか疑問に感じるかもしれません。
しかし、多くの場合、それぞれのページでは1つのテーマに対して異なる情報を提供しています。そのため、検索エンジンでは異なるページと認識し、重複ページとは見なしません。
canonicalを使ったURLの正規化は、完全に重複するページや類似するページに対して行う対策です。1ページ目をcanonicalに指定する誤りは、多くのサイトで見受けられます。canonicalは、事前に必要性を検討してから使用するようにしましょう。
canonicalを使用する際は、相対URLではなく、絶対URLの使用をおすすめします。絶対URLと相対URLの違いは下記のとおりです。
絶対URL | ・httpsやhttpを含むURL ・例:https://example.com/contents |
相対URL | ・httpsやhttpを含まないURL
・例://example.com/contents |
canonicalは絶対URLだけでなく、相対URLでも設定できます。ただし、相対URLは正しく設定しないと検索エンジンに誤って認識されてしまう恐れがあります。そのため、Googleでは相対URLではなく、絶対URLの使用が推奨されています。
canonicalの使用でよくあるミスが、誤ったURLを指定してしまうケースです。誤ったURLを指定してしまうと、当然のことながら検索エンジンに意図しないURLを示してしまい、URLの正規化を行えません。
特に、以下のようなミスを起こしがちであるので、設定する際は十分に注意してください。
・「www」の記載漏れ
・「/」の記載漏れ
・「contents」を「ccontents」とするなどのタイプミス
そのほか、「テンプレートを参考に作業を行い、テンプレートのURLをそのまま記載してしまった」などのミスが生じるケースもあります。誤ったURLを指定しないよう、指定の際は複数回確認するようにしましょう。
HTMLで<link rel=”canonical”>のタグを設定する場合は、body要素内に入れず、head要素内に追加する必要があります。例えば、以下のようなかたちです。
正しい記述例 | <head> <link rel="canonical" href=" https://www.example.com/contents "> </head> <body> (……) </body> |
もし、以下のようにbody要素内に<link rel=”canonical”>のタグを追加してしまうと、検索エンジンのクローラーに無視されてしまいます。
誤った記述例 | <head> (……) </head> <body> <link rel="canonical" href=" https://www.example.com/contents "> </body> |
また、canonicalはできるだけソースの上部に追加しましょう。そうすることで、クローラーは解析の早期でcanonicalを認識し、処理してくれます。
canonicalは重複したコンテンツや類似したコンテンツの正規化を目的とするタグです。被リンクの統合など、SEO目的で別の内容のコンテンツをcanonicalで指定しないようにしてください。
別の内容のコンテンツをcanonicalで指定したとき、ほとんどの場合でその指定はクローラーには無視されてしまいます。それどころかSEO的に悪影響がでるリスクもあるので、避けるべきcanonicalの使い方です。
canonicalでURLの正規化を行ったあとは、正しく正規化されているか確認を行いましょう。相対URLを誤って設定している、URLに記述ミスがあるなど正規化が正しく行われていないと、SEOへの影響も予測されます。
また、正しく正規化を行ったとしても、必ずしも指定したページが正規URLと認識されるわけではありません。最終的な処理は検索エンジンのクローラーが行うので、正規化後にどのページが正規URLとなっているかの確認は大切です。
Googleの正規化チェックには、Google Search Consoleが便利です。ここでは、Google Search Consoleで正規化をチェックする方法を紹介します。
Google Search Console(サーチコンソール)とは、Googleが無料で提供する検索結果などの解析ツールです。Google Search Consoleに備わる「URL検査」機能を利用すると、Googleがどのページを正規URLと見なしているか確認できます。
正規URLを確認したい場合は、Google Search Consoleの左メニューにある「URL検査」をクリックしたあと、画面上部の検索窓に調査したいURLを入力してみましょう。すると、URLの調査結果が表示されます。
次に、画面のなかほどにある「カバレッジ」を開くと、より詳細な情報が確認できます。カバレッジ情報には「検出」や「クロール」などの項目が表示されるので、そのなかの「インデックス作成」の項目をチェックしてください。
「インデックス作成」には、「ユーザーが指定した正規URL」と「Googleが選択した正規URL」の項目があります。
「ユーザーが指定した正規URL」はcanonicalで指定したURLが表示される項目です。また、「Googleが選択した正規URL」では、GoogleがインデックスしたURLとなります。それぞれに表示されたURLを確認することで、URLの正規化が正しくなされているかをチェックできます。
最後に、canonicalに関するよくある質問をご紹介します。CanonicalでURLを正規化するときの参考にしてください。
canonicalの読み方は「カノニカル」です。直訳すると「聖典の」「規準的な」を意味する形容詞となります。canonicalをHTMLタグとして活用すると、重複ページや類似ページがある場合に検索エンジンへ正規URL(優先してクロールしたいページ)を伝えることができ、URLの正規化に役立ちます。
canonicalの適正な設置場所は、重複ページや類似ページのhead要素内です。head要素以外、例えばbody要素などにcanonicalを設置すると、検索エンジンのクローラーに認識されないためご注意ください。
canonicalタグには、HTMLのhead要素内に記述することで、優先させるURL(正規URL)を検索エンジンのクローラーに示す意味があります。WEBサイト内でURLの異なる重複コンテンツがある場合、ECサイトなどで類似するコンテンツがある場合に、重複を避けることができます。
canonicalタグは1ページにつき1か所のみの設置となります。canonicalタグが1ページにつき複数設置された場合、検索エンジンのクローラーは正規URLを認識することができず、すべてのcanonicalタグが無視されます。
自己参照canonicalとは、正規URLのページ自体に、自身のURLを指定したcanonicalタグを設置することです。自己参照canonicalを設置しておくと、動的URLなどで意図しないURLが発生した場合でも、正規のURLをあらかじめ指定することができます。
canonical以外で検索エンジンに正規URLを伝える方法は、以下のようなものがあります。
手法 | 概要 |
301リダイレクト | ・重複ページへのアクセスを正規URLへ転送する
・重複ページを廃止するときなどに利用する |
サイトマップ | ・サイトマップ内で正規URLを指定する
・大規模サイトでのURLの正規化に有用となる |
ページのAMPバージョン | ・AMPガイドラインに従い、正規URLを示す
・重複ページの1つがAMPページであった場合に使える |
それぞれに特徴があるので、URLを正規化したいページやサイトの状況に合わせ、選択しましょう。
canonicalとは、サイトの構築上重複ページや類似ページが存在するときに、検索エンジンに優先したい正規URLを伝えられるHTMLタグです。使用する際は、HTMLやHTTPヘッダーにcanonicalを設置します。
canonicalは、動的URLの影響で重複コンテンツが発生する場合、同じコンテンツをさまざまなデバイスで閲覧できるようにする場合などに有用です。ただし、設置にはいくつかの注意点があるので、作業の際は慎重にチェックしましょう。
正規化したURLの状況は、Google Search ConsoleのURL検査機能で確認できます。クローラーに重複コンテンツと認識されると、評価の分散などSEO的に悪影響を招きます。URLの正規化を適切に実施し、SEO対策を的確に行ってください。
CyberOwlでは自社メディア運営で培ったSEOのノウハウを活かし、企業様のオウンドメディアのSEO対策・コンテンツ制作を受託しています。
金融・美容・通信業などをはじめとした様々な業界で取引実績があり、お客様のご要望に応えながら、SEO戦略の策定やコンサルティング、コンテンツの企画や制作まで幅広くご提供しています。
「SEO対策を行いたいが、何をすればよいかわからない…」とお困りの方は、まずはお問い合わせフォームよりご相談ください。