重複しているページの URL の正規化と正規タグの利用
単一のページに複数の URL でアクセスできる場合や、異なるページのコンテンツが類似している場合(たとえば、あるページにモバイル版と PC 版両方のURLがある場合)、Google はそのようなページを同じページの重複版と見なします。Google は、こうした URL のうちの 1 つを「正規」版として選択してクロールします。その他の URL はすべて「重複」した URL と見なし、クロールの頻度を減らします。
どの URL が正規版かを Google に明示的に伝えなかった場合、Google によって正規 URL が選択されるか、またはいずれの URL も同等の重要性を持つと見なされます。その結果、「正規 URL を選択すべき理由」で示しているような望ましくない動作が発生することがあります。
このドキュメントでは、Google 検索で URL 正規化がどのように機能するか、正規 URL を指定する必要がある場合、および Google に正規ページの選択に関する希望を伝える方法について説明します。
正規 URL とは
正規 URL とは、サイトの重複するページの中で Google が最も代表的と考えるページの URL です。たとえば、同じページに複数の URL(example.com?dress=1234
と example.com/dresses/1234
)がある場合、Google はそのうちの一つを正規 URL として選択します。
重複ページは完全に同一である必要はありません。たとえば、商品のリストを表示するページで並べ替えやフィルタリング(価格による並べ替えやアイテムの色によるフィルタリングなど)がわずかに違っているだけでは、別のページとは見なされません。正規 URL は、重複 URL とは別のドメインに存在する場合があります。
Google がインデックス登録で正規 URL を選択する方法
Google は、サイトをインデックスに登録する際に、各ページの主要なコンテンツを特定しようと試みます。同一のサイト内に、同じものを扱っていると思われるページが複数見つかった場合、Google では、最も完成度が高く有用であると判断したページを選び、そのページを正規版と見なします。正規ページは最も高い頻度で定期的にクロールされます。重複ページについては、Google がサイトをクロールする負荷を軽減するため、正規ページより低い頻度でクロールされます。
Google は、いくつかの要因(シグナル)に基づいて正規ページを選択します。シグナルには、ページが HTTP と HTTPS のどちらで配信されているか、ページの品質が高いか、サイトマップに該当 URL が存在するか、rel=canonical
ラベルが付けられているかなどがあります。こうした手法を使って正規ページの選択に関する希望を Google に伝えることは可能ですが、さまざまな理由から Google が別のページを正規版として選択する場合もあります。
あるページの異なる言語のバージョンは、メイン コンテンツが元の言語と同じである場合(つまり、ヘッダーやフッターなどの重要でないテキストのみが翻訳されていて、本文が翻訳されていない場合)にのみ、重複していると見なされます。
正規ページは、Google がコンテンツと品質を評価するための主要なソースとして使用されます。Google 検索では、通常は正規ページが結果に表示されます。ただし、重複ページの中に、明らかにユーザーのニーズにより適しているものがある場合は別です。たとえば、ユーザーがモバイル デバイスで検索した場合は、PC 向けのページが正規版としてマークされていても、モバイル向けのページが検索結果に表示される可能性が高くなります。
類似ページまたは重複ページを保持する理由
サイトにおいて、同一のページを指す複数の URL を保持することや、重複したページまたは非常によく似たページを異なる URL で保持することには、いくつかの妥当な理由があります。最も一般的な理由を以下に示します。
- さまざまな種類のデバイスに対応するため:
https://example.com/news/koala-rampage https://m.example.com/news/koala-rampage https://amp.example.com/news/koala-rampage
- 並べ替えまたはフィルタに関するパラメータやセッション ID などで動的 URL を有効にするため:
https://www.example.com/products?category=dresses&color=green https://example.com/dresses/cocktail?gclid=ABCD https://www.example.com/dresses/green/greendress.html
- ブログの複数のカテゴリに同じ記事を配置したため、ブログシステムにより複数の URL が自動的に保存された:
https://blog.example.com/dresses/green-dresses-are-awesome/ https://blog.example.com/green-things/green-dresses-are-awesome/
-
www あり / www なし / http / https とプロトコル ポートの各バージョンで同じコンテンツを配信するようにサーバーが構成されている:
https://example.com/green-dresses https://example.com/green-dresses https://www.example.com/green-dresses https://example.com:80/green-dresses https://example.com:443/green-dresses
- ブログで他のサイトへのシンジケーション用に提供したコンテンツの一部またはすべてが他のサイトのドメインで複製された:
https://news.example.com/green-dresses-for-every-day-155672.html
(シンジケートされた投稿)https://blog.example.com/dresses/green-dresses-are-awesome/3245/
(元の投稿)
正規 URL を選択すべき理由
以下の理由から、重複ページまたは類似ページの中から明示的に正規ページを選択することをおすすめします。
-
検索結果でユーザーに表示したい URL を指定するため。たとえば、ユーザーを緑のワンピースの商品ページにアクセスさせる際の URL として、
https://example.com/dresses/cocktail?gclid=ABCD
ではなくhttps://www.example.com/dresses/green/greendress.html
を選ぶことができます。 -
類似ページや重複ページについてリンクのシグナルを統合するため。これにより、検索エンジンで、個々の URL について得られた情報(その URL へのリンクなど)を、選んだ 1 つの URL に統合できるようになります。つまり、他のサイトから
https://example.com/dresses/cocktail?gclid=ABCD
へのリンクが、https://www.example.com/dresses/green/greendress.html
へのリンクに統合されます。 - 単一の商品またはトピックのトラッキング指標を単純化するため。URL が複数あると、特定のコンテンツについて指標を統合することが難しくなります。
- シンジケーション コンテンツを管理するため。他のドメインで公開するコンテンツをシンジケートする場合、使用する URL が検索結果に表示されるようにする必要があります。
- 重複ページのクロールに要する時間を削減するため。Googlebot がサイトのポテンシャルを最大限に引き出すには、サイト内の同一ページの PC 版とモバイル版のクロールよりも、新しい(または更新された)ページのクロールに時間をかけるほうが効率的です。
Google が正規と見なすページを確認する
URL 検査ツールを使用して、Google でどのページが正規と見なされるかを調べます。正規ページを明示的に指定しても、パフォーマンスやコンテンツなどのさまざまな理由から、Google によって別のページが正規版として選択されることがあります。
正規ページを指定する
重複ページまたは類似ページに対応する正規 URL を指定するには、以下の方法のいずれかを使用します。以下の方法のいずれかを使用することをおすすめしますが、どれも必須ではありません。正規 URL を指定しなかった場合は、Google が最適であると判断したバージョンの URL が正規 URL として選択されます。必ず一般的なガイドラインに準拠してください。
正規化の方法と説明 | |||
---|---|---|---|
rel=canonical <link> タグ |
すべての重複ページのコードに、正規ページを指す
|
||
rel=canonical HTTP ヘッダー |
ページのレスポンスで
|
||
サイトマップ |
サイトマップで正規ページを指定します。
|
||
301 リダイレクト |
301 リダイレクトを使って、指定した URL よりもリダイレクト先の URL のほうが優れたバージョンであることを Googlebot に伝えます。この方法は、重複ページを廃止するときにのみ使用します。 |
||
ページの AMP バージョン | ページのバージョンの 1 つが AMP ページである場合は、AMP ガイドラインに沿って正規ページと AMP バージョンを指定します。 |
一般的なガイドライン
すべての正規化方法で、下記の一般的なガイドラインを遵守してください。
- 正規化の目的で robots.txt ファイルを使用しないでください。
- 正規化の目的で URL 削除ツールを使用しないでください。URL 削除ツールでは、URL のすべてのバージョンが検索で非表示になります。
- 同じ正規化方法を使用するか異なる正規化方法を使用するかにかかわらず、複数の異なる URL に対して、同じページの正規版として指定しないでください(たとえば、ある URL をサイトマップで指定した場合、同じページの別の URL を
rel="canonical"
で指定しないでください)。 - 正規ページの選択を妨げる手段として
noindex
を使用しないでください。このディレクティブの目的はインデックスからページを除外することであり、正規ページの選択を管理することではありません。 -
hreflang タグを使用する場合は、正規ページを指定してください。正規ページは同じ言語で指定してください。同じ言語の正規ページが存在しない場合は、できる限り最適な代替言語で指定してください。
-
サイト内でリンクする場合は、重複 URL ではなく正規 URL にリンクしてください。ご自分が正規版と見なしている URL に一貫してリンクすることで、正規版の選択に関する希望が Google に理解されやすくなります。
正規 URL では HTTP より HTTPS を優先して使用する
Google は、正規 URL の選択に際して、HTTP ページより同内容の HTTPS ページを優先します。ただし、以下のように問題がある場合やシグナルが競合する場合は別です。
- HTTPS ページに無効な SSL 証明書が含まれている。
- HTTPS ページに安全でない依存関係が含まれている(画像以外)。
- HTTPS ページで、ユーザーを HTTP ページに(または HTTP ページ経由で)リダイレクトしている。
- HTTPS ページに HTTP ページへの
rel="canonical"
link
が含まれている。
Google のシステムは、デフォルトで HTTP ページより HTTPS ページを優先的に選択しますが、次のいずれかの措置を講じると、この選択が確実に行われるようにすることができます。
- HTTP ページから HTTPS ページへのリダイレクトを追加する。
- HTTP ページから HTTPS ページへの
rel="canonical"
link
を追加する。 - HSTS を実装する。
Google が HTTP ページを誤って正規版と見なすのを防ぐには、以下の行為を避けてください。
- 不適切な TLS / SSL 証明書、または HTTPS から HTTP へのリダイレクトを使用しないでください。これらは Google が HTTP を強力に優先する原因になります。この強力な優先は、HSTS を実装してもオーバーライドできません。
- サイトマップまたは hreflang エントリに、HTTPS バージョンではなく HTTP ページを含めないでください。
- SSL / TLS 証明書を、ホストの誤ったバージョンで実装しないでください(たとえば、www.example.com の証明書を example.com で配信しないでください)。証明書はサイト URL と完全に一致するか、ドメイン内の複数のサブドメインで使用できるワイルドカード証明書でなければなりません。
rel="canonical"
link
タグを使用する
rel=”canonical” link タグ(正規タグ)とは、ページが別のページと重複していることを示すために HTML の head セクション内に使用するタグです。ページが別のページと重複していることを示すには、HTML の head
セクションで <link>
タグを使用します。
さまざまな URL からアクセスできるコンテンツについて、https://example.com/dresses/green-dresses
を正規 URL にしたいとします。この URL を正規版として指定する手順を以下に示します。
-
すべての重複ページを
rel="canonical"
link タグでマークします。正規ページを指すように属性
rel="canonical"
を設定した<
要素を、重複ページのlink
><head>
セクションに追加します。次に例を示します。<link rel="canonical" href="https://example.com/dresses/green-dresses" />
-
正規ページにモバイル版がある場合は、モバイル版のページを指す
rel="alternate"
link
を追加します。<link rel="alternate" media="only screen and (max-width: 640px)" href="https://m.example.com/dresses/green-dresses">
- ページに適した hreflang またはその他のリダイレクトを追加します。
rel="canonical"
link
タグでは、相対パスではなく絶対パスを使用します。
良い例:
https://www.example.com/dresses/green/greendress.html
悪い例:
/dresses/green/greendress.html
JavaScript を使って rel="canonical"
リンクタグを追加する場合は、正規リンクタグを正しく挿入してください。
rel="canonical"
HTTP ヘッダーを使用する
サーバーを構成することができる場合は、rel="canonical"
HTTP ヘッダー(HTTP タグではありません)を使用して、検索でサポートされているドキュメント(PDF ファイルなどの HTML 以外のドキュメントを含む)の正規 URL を指定できます。
現在 Google は、ウェブ検索結果についてのみ、この方法をサポートしています。
複数の URL で同じ PDF ファイルを公開している場合は、rel="canonical"
HTTP ヘッダーを返して、PDF ファイルの正規 URL がどれかを Googlebot に伝えることができます。
Link: <https://www.example.com/downloads/white-paper.pdf>; rel="canonical"
rel="canonical"
HTTP ヘッダーの推奨事項は、rel="canonical"
link
タグと同じです。RFC2616 に沿って、rel="canonical"
HTTP ヘッダーでは二重引用符のみを使用します。
サイトマップを使用する
サイトの各ページについて正規 URL を選択し、それらをサイトマップで送信します。サイトマップに含まれるすべてのページが正規ページとして提示されるので、Google は、コンテンツの類似性に基づいて、どのページが重複しているか(重複ページがあるかどうか)を判断することになります。
サイトマップで指定した URL が正規版と見なされる保証はありませんが、サイトマップを使用すると、大規模なサイトでも正規 URL を簡単に定義できます。また、ご自分がサイトのどのページを最も重要と考えているかを Google に伝えることに役立ちます。
サイトマップには、正規ページ以外のページを含めないでください。サイトマップを使用する場合は、正規 URL のみをサイトマップに指定します。
廃止する URL に 301
リダイレクトを使用する
既存の重複ページを削除したいが、古い URL を廃止する前にスムーズな移行を確実に行う必要がある場合は、この方法を使用します。
たとえば、次のような複数の URL でページにアクセスできるとします。
https://example.com/home
https://home.example.com
https://www.example.com
上記の URL のいずれかを正規 URL として選択し、301
リダイレクトを使用して、他の URL からのトラフィックをこの正規 URL に送信します。サーバー側の 301
リダイレクトは、ユーザーと検索エンジンを確実に正しいページに誘導する最善の方法です。ステータス コード 301
は、ページが別の場所(別のURL)に完全に移転したことを意味します。
ウェブサイト ホスティング サービスをご利用の場合は、301
リダイレクトの設定方法についてそのサービスのドキュメントを検索してください。
トラブルシューティング
ご自分が所有していないプロパティに正規 URL が存在する場合、重複ページのトラフィックを確認することはできません。正規 URL が別のプロパティに存在する一般的な理由としては次のようなものがあります。
- 誤ってマークされた言語バージョン: 複数のウェブサイトで、実質的に同一のコンテンツを各国のユーザー向けにローカライズして配信する場合は、必ずローカライズされたサイトに関するガイドラインを遵守してください。
- 誤った正規タグ: 一部のコンテンツ管理システム(CMS)または CMS プラグインで正規化手法が誤って使用され、外部ウェブサイトの URL を指すことがあります。ご自分のコンテンツがこれに該当しないかどうかをご確認ください。サイトで意図しない正規 URL が選択されていることが示されている場合は、
rel="canonical"
または301
のリダイレクトの使用方法が誤っている可能性があります。問題を直接修正してください。 - サーバーの構成ミス: ホスティングの誤った構成が原因で、意図しないクロスドメイン URL が選択されることがあります。次に例を示します。
- b.com 上の URL へのリクエストに対して a.com のコンテンツを返すように誤ってサーバーが構成されている
- 2 つの無関係なウェブサーバーが同一の
soft 404
ページを返し、そのため Google によってエラーページとして認識されない
- 悪意のあるハッキング: ウェブサイトに対する攻撃の中には、HTTP 301 リダイレクトを返すコードや、クロスドメインの
rel="canonical"
link タグを HTML<head>
(HTTP ヘッダー)に挿入するコードを組み込むものがあります。そうしたコードは、たいていの場合、悪意のあるコンテンツまたはスパム コンテンツをホストする URL を参照します。このようなケースでは、Google のアルゴリズムによって、攻撃を受けたウェブサイト上の URL の代わりに、悪意のあるコンテンツまたはスパム コンテンツをホストする URL が選択されることがあります。 - 盗用ウェブサイト: Google のアルゴリズムによって、コンテンツを無断でホストしている外部サイトの URL が選択されることがまれにあります。別のサイトが著作権法に違反してご自分のコンテンツを複製していると思われる場合は、そのサイトの所有者に連絡して削除を要求することをおすすめします。さらに、デジタル ミレニアム著作権法に基づく通知を提出することによって、権利を侵害しているページを Google の検索結果から除外するよう Google にリクエストすることもできます。