canonicalが自身のURLと異なる(canonical不一致)

canonical不一致とは、あるページの canonical タグが自分自身ではなく別のURLを指している状態です。意図した正規化なら問題ありませんが、意図せず発生している場合、そのページは検索結果に出なくなる可能性があります。

公開日: 2026年8月16日 / 最終更新日: 2026年9月6日

カテゴリ: インデックス / 影響度: 中 / 想定工数: 1時間 / ルールID: canonical_mismatch

この問題の意味

canonical(rel="canonical")は「このページの正規URLはこれです」と検索エンジンに伝えるタグです。同じ内容が複数のURLで見られるとき、評価を1つのURLにまとめるために使います。

canonical不一致は、ページAのcanonicalがページB(別のURL)を指している状態を指します。これは「Aは正規版ではない。Bを見てほしい」という宣言であり、検索エンジンはAをインデックスから外し、Bを優先する可能性があります。

なぜ問題になるのか

意図的な正規化であれば正しい設定です。問題になるのは意図せず設定されているケースで、実際には次のような事故がよく起きます。

このうち1つ目が起きると、サイト全体がトップページ1枚として扱われ、個別ページが検索結果に出なくなります。影響範囲が大きいわりに気づきにくい問題です。

Smash SEOの検出条件

応答が200番台〜300番台のページについて、canonicalに指定されたURLを正規化したうえで、そのページ自身のURLと比較し、一致しない場合に検出します。

正規化を挟むのは重要な点です。末尾スラッシュの有無、スキームの大文字小文字、順序が異なるクエリパラメータといった「表記は違うが同じURL」を不一致として報告しないためです。たとえば /foo に対して canonical が /foo/ を指していても、これは正しい自己参照として扱い、問題として報告しません。

直し方

まず、その不一致が意図したものかを判断します。意図的な正規化(重複ページの統合、パラメータ違いの集約)であれば修正は不要です。

意図しない場合は、各ページが自分自身の絶対URLを指すように修正します。

自己参照canonicalの例

<!-- https://example.com/service/ の場合 -->
<link rel="canonical" href="https://example.com/service/" />

WordPressであれば、テーマのheader.phpに固定URLが直書きされていないかを確認します。SEOプラグイン(Yoast、All in One SEOなど)を使っている場合は、プラグイン側の設定が優先されるため、テーマ側の記述と二重になっていないかもあわせて確認してください。

修正後の確認方法

注意点

canonicalはあくまで「推奨」であり、命令ではありません。Googleは内容や内部リンクなど他の要素も見て、指定と異なるURLを正規版として選ぶことがあります。canonicalを直しても意図どおりにならない場合は、内部リンクがどのURLを指しているか、サイトマップにどちらが載っているかもあわせて揃えてください。

また、noindexとcanonicalを同じページに併用するのは避けてください。矛盾したシグナルになり、意図しない挙動につながります。

よくある質問

canonicalが違うだけで本当にインデックスから消えますか?

必ず消えるわけではありません。canonicalは推奨シグナルであり、Googleは内容・内部リンク・サイトマップなども見て正規URLを選びます。ただし他のシグナルと矛盾しない限り、指定は尊重されやすい傾向があります。

末尾のスラッシュ有無は問題になりますか?

Smash SEOではURLを正規化して比較するため、末尾スラッシュの違いだけでは問題として報告しません。ただしサーバー側で /foo と /foo/ が別ページとして両方200を返す場合は、リダイレクトで片方に統一することを推奨します。

ページャーのcanonicalは1ページ目にすべきですか?

現在のGoogleはrel="prev"/"next"を使用していません。2ページ目以降も自己参照canonicalにするのが一般的です。1ページ目に集約すると、2ページ目以降のコンテンツが評価対象から外れる可能性があります。

関連記事

この問題が自分のサイトで起きているかは、URLを入力するだけで確認できます。 無料で診断するルール一覧料金プラン