SEO
2021.12.27 (月)
canonical(カノニカル)によるURLの正規化とは?SEOの評価をアップさせる方法
SEO対策は一筋縄ではいかないものです。
なぜなら、SEO対策を行うにはキーワードや記事の内容、記事の信頼性など様々な要素について考慮し対策を講じる必要があるためです。
しかしながら、SEO対策には適切に実行すれば、比較的容易に検索エンジンから高い評価を得ることができる手法もあります。
そのひとつがURLの正規化です。
今回はcanonicalを中心に正規化について解説します。
▼目次
canonical(カノニカル)とは?
canonical(カノニカル)とは英語で「正典(正式と認められた文書)の、正式の」という意味です。
つまり、正規のページ(正規ページ)と指定するものを1つ、検索エンジンに対して明示するために使われます。
とくに、複数のURLでアクセス可能なページや、内容の類似したページが存在する状況で用いられます。
・canonicalの定義について
canonicalは「HTMLファイルを記述するために使われるlinkタグの属性であるrelの内容を指定する属性値の一種である」と定義されています。
正規化とは?
canonicalの説明でもありましたが、正規化とは検索エンジンに対して、Webサイト運営者が正規としたいページを指し示すことです。
正規化の対象となるページは以下の条件に該当する重複ページです。
- 複数のURLでアクセス可能である
- 内容が類似している
正規化は検索エンジン側にとってもメリットがあります。
正規ページが登録されることで正規ページ以外へのクロールを抑えることができ、リソースの有効活用ができるためです。
また、検索エンジンのユーザーにとってもメリットがあります。
具体的には、類似したページが検索結果に表示されにくくなり求めている情報にたどり着きやすくなることです。
なぜ正規化する必要があるのか?
ここからはcanonicalを使って正規ページを検索エンジンに示す必要性について説明します。
意図していないページが正規ページとして登録されることを防ぐ
複数のURLでアクセス可能なページ、内容の類似しているページが存在すると、検索エンジンはそれらを重複ページと見なします。
正規化されていない状態で検索エンジンによって重複ページが発見されると、そのうち1つを正規ページとして検索エンジンが自ら登録します。
このように正規ページを検索エンジン側に伝えなかった場合、検索エンジン側の評価により正規ページが決定されます。
そのため、意図せぬページが正規のものとして登録される可能性があります。
意図せぬページが正規ページとして登録されることによって、本来正規ページであるべきページへのクロール頻度が下がります。
結果、Webサイト運営者が意図するように検索エンジンから評価されず、Webサイト全体の評価が落ちる原因にもつながりかねません。
その対策として正規化を行い、正しいページを正規ページとして検索エンジン側へ伝える必要があります。
被リンク数を正規化したページのものとして統合できる
正規化を行うことによって、それぞれのページの被リンク数が正規ページの被リンク数として統合されます。
その結果、正規ページへの被リンク数が増え、検索エンジンからより高い評価を受けやすくなります。
ページ評価の分散を防ぐ
ある1つのページが複数のURLでアクセスが可能である場合、検索エンジンは各URLでアクセスできるページをそれぞれ別のページとして評価します。
またこの時、ページ評価の上で重要な要素である被リンク数もページごとに検知されてしまいます。
すると、表示されるページは全く同じものであるにも関わらず、ページ評価は各URLごとに行われ、結果、ページの評価は分散してしまいます。
このように正しくページが評価されない状況に陥ります。
ページ評価の分散を防ぎ、より高いページ評価を得るためにも正規化を行いましょう。
検索エンジンから良質なWebサイトであると認識される
検索エンジンの運営者は常に有益な情報を必要とするユーザーに提供することを目指し、検索エンジンの運営を行っています。
それを尊重する姿勢を示す上でも正規化を行い、検索エンジンにWebサイト運営者の意図を正しく伝えることは重要だと言えます。
そもそもですが、重複ページが発生すること自体に問題はありません。
しかしながら、重複ページを放置し検索エンジンのユーザーへ不利益を発生させることは問題とされています。
そのような認識のもと、正規化の対応を進めていきましょう。
canonical(カノニカル)使用時の注意点
canonicalを使用し正規化を行う際に、注意したいポイントやよくある誤解を紹介します。
canonicalを設定してすぐに正規ページになる訳ではない
canonicalの設定直後、指定したページが正規ページとして検索エンジン側にインデックスされる訳ではありません。
クローラの訪問、検索エンジンによる評価を経て、最終的に正規ページとしてインデックスされます。
必ず正規ページとしてインデックスされる訳ではない
canonicalを設定すれば、指定したページが必ず正規ページとしてインデックスされる訳ではありません。
canonicalの役割は指定したページが正規ページであると検索エンジン側に対しシグナルを送るだけであり、そのシグナルに強制力はありません。
そのため、検索エンジンが他要素を加えて解釈した結果によっては、指定ページが正規ページとしてインデックスされない可能性もあります。
canonicalを使用し指定したページ以外はインデックスされない
canonicalで正規ページとして指定して、実際にそのページが正規ページとしてインデックスされた場合、他の重複ページはインデックスされません。その結果、正規ページ以外の重複ページは検索結果には表示されなくなるため、注意が必要です。
自身のURLをcanonicalを使い指定しても問題はない
canonicalは他のページを指定するためだけではなく、自身のページを正規ページであると指定し、検索エンジン側にそのシグナルを送ることができます。
これはコンテンツシンジケーションを行う際にメリットがあります。
コンテンツシンジケーションとは第三者のWebサイトに自身のページを配布し、同一の内容で掲載してもらうことを指します。コンテンツシンジケーションを行うページにcanonicalでオリジナルページを指定しましょう。
指定することで掲載先のコピーページに設定されたリンクの数がオリジナルページの被リンク数として統合されます。
その結果、オリジナルページがより高く評価されるようになります。
異なるドメインに存在するページを正規ページとして指定できる
canonicalはドメインが異なるページも指定することができます。
そのため、コンテンツシンジケーションを実施する際には自身のWebサイトのページを正規ページとして指定しましょう。
コンテンツシンジケーションについては後述の「コンテンツシンジケーションを実施している」を参照下さい。
・ドメインについて
Webサイトがどこに存在しているのかというWeb上の住所にあたります。
例)https://www.example.comというURLがある場合「example.com」の部分を指す。
canonical(カノニカル)の設定方法について
ここでは実際にcanonicalを使った正規ページの指定方法について説明します。
基本的な設定方法
linkタグのrel属性にcanonicalを指定することで設定できます。
具体的な記述方法は以下の通りです。
この記述では、https://www.example.com/index.htmlのページが正規ページとして検索エンジンに伝えています。
<head><link rel=”canonical” href=”https://www.example.com/index.html”>
</head>
headの中に記述する
必ずHTMLファイル中のhead内に記述して下さい。
正規ページであることは検索エンジンだけに伝えるため、ページ全般の情報を提示するhead部分に記述します。
もちろん、head内に他の要素(<title>……</title>など)を記述することは可能です。
ただし、Webブラウザ上で表示される内容を記載するbody部分に記述してしまうと、正しく正規ページを指定できないため、注意が必要です。
ソース上部に記載する
早い段階で検索エンジンのクローラに認識され、処理されるためにもソース上部に記載する方がよいとされています。
canonical(カノニカル)を使うべきケース
canonicalを使い、正規化を行うべきケースは以下の通りです。
・次の(1)(2)の場合(検索エンジンから重複ページと見なされる恐れがある場合)
- 複数のURLでアクセス可能である
- 内容の類似したページが複数存在する
・301リダイレクトが利用できない環境でWebサイト運営を行っている
301リダイレクトの詳細については「その他のURL正規化の方法について>301リダイレクト」の項目で説明しています。
以降、(1)(2)のケースについて例を挙げて説明していきます。
複数のURLでアクセス可能なページが存在する
このケースでcanonicalを用いて正規化を行う場合、複数のURLのうち正規ページと指定するものを決め、そのURLをlinkタグ内にcanonicalを属性値として記述します。
具体的には、これから紹介する各ケースにおいてWebサイト内での記述形式を統一し、その形式を使ってcanonicalの設定を行います。
なお、このケースにおいてはcanonicalよりも301リダイレクトがより一般的な正規化の方法です。
wwwあり/なし
- www あり
https://www.example.com/green.html - www なし
https://example.com/green.html
上記のようにwwwの有無に関わらず、同じページが表示されます。
たとえば、wwwありを統一的な記述方法として選択した場合を想定します。
この場合、ドメイン直下のgreen.htmlファイルに、https://www.example.com/green.htmlを正規ページとしてcanonicalを使い記述します。
wwwなしを選択した場合は、wwwなしのURLを記述しましょう。
canonicalは自身のページを指定できます。詳しくは「自身のURLをcanonicalを使い指定しても問題はない」を参照下さい。
・wwwについて
World Wide Webの略称で、https://など、プロトコル名の後に記述され、インターネット黎明期において、Webページシステムと他のシステム(電子メールやファイル共有など)を区別するために使用されていました。
index.htmlあり/なし
- index.html あり
https://example.com/index.html - index.html なし
https://example.com/
上記のようにindex.htmlの記述の有無に関わらず、いずれも同じページ(https://example.com/index.html)を表示します。
これはページ取得先のWebサーバーの仕様上、index.htmlの記述がなくとも自動的にこのページをユーザーに返すためです。
index.htmlファイルにcanonicalを使い、選択した記述形式のURLを正規ページとして設定します。
wwwあり/なしの場合と同様に選択した記述方法を使い、自身のページを指定します。
・index.htmlとディレクトリについて
index.htmlはあるディレクトリにアクセスした際に表示されるページ(トップページ)です。
index.htmlは各ディレクトリに1つ存在しています。
また、ディレクトリとはパソコンのフォルダのようなものです。
ディレクトリにはWebページを表示させるために必要なデータや別のディレクトリが格納されます。
たとえば、「https://www/example.com/company/map/」というURLでは、第一階層の中に「company」というディレクトリがあります。
また、company内にも「map」というディレクトリがあることを意味しています。
URLの末尾にスラッシュあり/なし
- URLの末尾にスラッシュあり
https://example.com/
https://example.com/price/ - URLの末尾にスラッシュなし
https://example.com
https://example.com/price
※ただしpriceはディレクトリ上の例であれば、それぞれのURLは「https://example.com/」「https://example.com/price/」と通常解釈され、各ディレクトリのトップページが表示されます。
どちらの記述方法にするか統一し、そのURLを正規ページとして指定しましょう。
・トレイリングスラッシュについて
URLの最後尾に付けられるスラッシュはトレイリングスラッシュと言い、実は有無についてSEOの観点であまり重要視はされてはいません。
しかしながら、URLの最後尾がディレクトリを意味するのであれば、スラッシュを付けることが推奨されています。
http/httpsの違い
http/httpsの両方で同じページが表示できる場合、正規化を行いましょう。
その際、httpsを正規ページと設定します。これはセキュリティ面はもちろんのこと、Googleがhttpsに対応したWebサイトの評価を上げる方針である状況から見ても有効なためです。
- http
http://example.com/green.html - https
https://example.com/green.html
・httpについて
http(Hypertext Transfer Protocolの略)はHTMLを使用した文書をやり取りするために使われる通信手段(プロトコル)を指します。
なお、HTMLはHyper Text Markup Languageの略でWebページを記述するための言語です。
URLにhttpと記述することで、ブラウザに対してHTMLファイルの取得を命令しています。
また、https(Hypertext Transfer Protocol Secureの略)は暗号化された接続でhttpを使って通信することを表しています。
内容の類似しているページが存在する
次にページの内容が類似しているために重複ページと見なされるケースについて紹介します。
ページを表示させるデバイスごとにURLが異なる
たとえば、PC向けページとスマートフォン向けページが存在し、それぞれ異なるURLを持っている場合です。
このケースではアノテーションを行い、PC向けページとスマートフォン向けページの2つが存在していることを検索エンジンに知らせます。
PC向けページには、linkタグの属性値であるalternateを、スマートフォン向けページにはlinkタグの属性値であるcanonicalを使ってそれぞれのURLを指定します。
設定方法の詳細は後述の「(参考)alternateの設定方法について(アノテーション)」を参照下さい。
ページ内の一部の情報のみ変化させて表示させている
文章の内容は全て同じで、画像が1つだけ違うといった場合に該当します。
具体的には、ネットショップなどで色違いやサイズ違いの商品を表示させるために、それぞれ別のページを使用している場合に該当します。
異なるディレクトリに同じページが存在する
このケースの場合、完全に同一のページのため、重複ページと見なされます。
ディレクトリについては「index.htmlあり/なし」参照下さい。
コンテンツシンジケーションを実施している
コンテンツシンジケーションとは第三者のWebサイトに自身のページを提供し、同一のページを掲載してもらうことです。
検索エンジンは自身のWebサイトと提供先のWebサイトのページを重複ページと見なす可能性があります。
そのため、提供する記事にcanonicalを使い、自身のWebサイトの記事が正規ページであると指定しましょう。
指定することで提供したページとオリジナルのページの被リンク数が、オリジナルのものとして統合されるため、自身のWebサイトの評価アップにつながります。
ABテストを実施している
ABテスト(A//Bテストとも表記)とは特定の要素だけを変更した複数のWebページを用意し、ランダムにユーザーに表示させるテストです。
各ページのクリック数やコンバージョン率を評価することで、最適な変更を見出すことができます。
テスト用に用意したページが内容の類似したページと見なされることがあるため、canonicalによって正規ページを指定しましょう。
AMPを使用している
AMP(Accelerated Mobile Pageの略)はモバイル端末においてページを高速で表示させるための仕組みです。
AMPは「アンプ」と読み、GoogleとTwitterによる共同のサービスです。
AMPに対応するためにはモバイル端末向けのhtmlファイル(AMPページ)を別に用意する必要があります。
この2つのページは内容が同一であるため、重複ページと見なされることがあります。
そこで、AMPページにはcanonicalを使って非AMPページを指定しましょう。
また、非AMPページにはcanonicalと同様のlinkタグの「amphtml」という属性値を使い、AMPページが存在することを検索エンジンへ伝えます。
amphtmlの設定方法については、後述の「(参考)amphtmlの設定方法について(AMP)」を参照下さい。
(参考)alternateの設定方法について(アノテーション)
PC向けページとスマートフォン向けページの記述内容は以下の通りです。
- PC向けページに設定する内容
<link rel=”alternate” media=”only screen and (max-width: 640px)” href=”http://sp.example.com/”>
※http://sp.example.com/はスマートフォンに表示されるページ - スマートフォン向けページに設定する内容
<link rel=”canonical” href=”http://example.com/”>
※http://example.com/はPCに表示されるページ
上の例の通り、PC向けページにはalternateを使い、スマートフォン向けページの存在を検索エンジンへ伝えます。
また、スマートフォン向けページにはcanonicalを使い、PC向けページを正規ページと指定します。
(参考)amphtmlの設定方法について(AMP)
AMPページ、非AMPページに設定する内容をそれぞれ説明します。
- AMPページに設定する内容
<link rel=”canonical” href=”https://example.com/non-amp.html”>
※non-amp.htmlは非AMPページ - 非AMPページに設定する内容
<link rel=”amphtml” href=”https://example.com/amp.html”>
※amp.htmlはAMPページ
上の例の通り、AMPページにはcanonicalを使い、非AMPページを正規ページと指定します。
また非AMPページにはamphtmlを使い、AMPページの存在を検索エンジンへ伝えます。
AMPについての詳細は弊社ブログもあわせてご確認下さい。
参考:GoogleAMPは実装すべき?メリットやデメリット、始め方をご紹介します!
canonical(カノニカル)の設定における注意点
ここでは、canonicalを設定する際に気を付けたい点について説明していきます。
hrefに記載したURLが誤っていないか?
誤ったURLを指定し、そのページが存在しない場合(404エラーと認識される場合)、正規ページとしてインデックスされず、正規ページの評価が正しく行われません。
また、誤ったURLを指定し、そのページが存在する場合、内容が全く異なるためcanonicalで指定することが誤りとなります。
結果、検索エンジンから意図的に正規ページを指定していると評価され、ユーザーの利益を損ねるWebサイトと認識される可能性があります。
そのため、Webサイト全体の評価が下がる可能性があるので、注意しましょう。
1つのページに2つ以上canonicalを設定していないか?
1つのページに設定できるcanonicalは1つで、2つ以上のページを正規ページとして指定することはできません。
仮に1ページに2つ以上canonicalを設定した場合、検索エンジンはその全ての内容を無視するため、指定したどのURLも正規ページとインデックスされることはありません。
意図せず指定していていないか?
たとえば、テンプレートファイル内に<link rel=”canonical”……>の記述が残っていたため、意図しないページが正規ページとして設定されることが起こっています。
テンプレート内にcanonical設定があることに気付かぬまま、別にcanonicalを設定すると先に説明した通り、どのページも正規ページと認識されなくなるため注意が必要です。
相対URLを使っていないか?
相対URLを使って正規ページを指定することは可能ですが、不要な誤りを防ぐためにも絶対URLの使用をおすすめします。
ページネーションしている記事で指定していないか?
ページネーション(pagination)とは1つの記事を複数のページに分割することです。
ページネーションを行い分割した2つ目以降のページにおいて、最初のページをcanonicalで指定しないようにしましょう。
これは内容が全く類似していないため、重複ページとは認識されないためです。
この場合は、linkタグの属性値prevとnextを使い、検索エンジンにページネーションを行っていることを伝えましょう。
canonical(カノニカル)の設定の確認方法
canonicalを設定した後に正規ページとして登録されているか確認する方法を紹介します。
Google Search Console
Googleが提供しているサービスで、Webサイト運営における分析ツールです。
canonicalが正しく設定され、意図したページが正規ページとしてインデックスされていることを確かめるためには、Google Search Console内のカバレッジを確認します。
「ユーザーが指定した正規 URL」に指定したURLが記載されていれば、正しく設定されています。
さらなる詳細については以下のGoogle Search Consoleヘルプを参照下さい。
参考:URL 検査ツール – Search Console ヘルプ
また、Google Search Consoleについて弊社ブログもあわせてご確認下さい。
参考:Googleサーチコンソールの使い方を初心者向けに解説
その他のURL正規化の方法について
canonical以外の正規化の方法について紹介します。
301リダイレクト
ユーザーがリクエストしたURLを別のURLへ自動的に転送する方法です。
301リダイレクトはWebサイトの全面リニューアルやドメインの変更などの場面で利用されています。
これは古いURLでアクセスしてきたユーザーを新しいURLへ転送するためです。
301リダイレクトの特徴は、転送元のページの内容を検索エンジンが閲覧できないため、転送元のページが評価されることは一切ありません。
301リダイレクトの設定方法
301リダイレクトの設定を行うにはWebサーバーソフトApacheで使用されている.htaccessファイルを編集します。
.htaccessの編集が行えない環境である場合、301リダイレクトは利用できません。
そのため、正規化を行うにあたってはcanonicalを代用します。
301リダイレクトとcanonical(カノニカル)の使い分け
301リダイレクトは複数のURLでアクセスできるページを正規化するために主に使用されています。
詳しくは以下のようなケースです。
- wwwあり/なしの統一
- index.htmlあり/なしの統一
- URLの末尾にスラッシュあり/なしの統一
- http/httpsの統一
一方、canonicalは主に内容の類似しているページが存在する場合に使われます。
ホームページのSEO対策ならDreamLabまで
Webサイトの正規化にお悩みの際には是非とも弊社までご一報下さい。
正規化の対象洗い出しや正規化に伴うWebサイトの全面改修も請け負います。
AIがあなたにオススメの記事を表示しています
-
2021.06.06
強調スニペットの表示方法5選。全種類や非表示方法やSEO上のメリットなど
-
2021.06.12
Googleサーチコンソールの使い方を初心者向けに解説
-
2021.03.25
SEO対策の基本!hタグ(見出しタグ)の効果的な使い方とは?
-
2021.12.08
キュレーションメディアとは?作り方やメリット・注意点について
-
2021.03.31
オウンドメディア改善方法!PVを上げる方法6選