@kojiromiki (Yuki S)

Are you sure you want to delete the question?

If your question is resolved, you may close it.

Leaving a resolved question undeleted may help others!

We hope you find it useful!

Next.jsサイトで一部URLがGoogleに処理されず、検索結果にもほとんど表示されない原因を知りたい

解決したいこと

Next.js(App Router)で運営しているサイトについて、Google Search ConsoleやHTTPレスポンスなど技術的な項目は一通り確認しましたが、一部サイトだけGoogleのインデックスが極端に進みません。

SEOのテクニックというより、「技術的に見落としがないか」を確認したいです。

  • Search Consoleでは「URL is unknown to Google」と表示されるURLが多い

  • サイトマップには掲載済み

  • URL Inspectionのライブテストは成功

  • しかし検索結果にほとんど出てこない

  • Next.js App Router

  • SSR

  • HTTP 200

  • robots.txt 問題なし

  • noindexなし

  • self canonical

  • sitemap.xml掲載済み

  • Googlebotにも同じHTMLを返している

  • JavaScript必須ではない

同時期・同じ構成で公開した別のNext.jsサイトは、最近まとめてインデックス・順位が付き始めました。

こちらのサイトだけ極端に処理されません。

そのため、SEOというより、Next.js・Cloudflare・HTTPヘッダー・キャッシュ・レンダリングなど技術面で見落としている点があるのではないかと考えています。

ここまで確認している場合でも、技術的に確認すべきポイントはありますか?

Googlebotのクロールログ、HTTPヘッダー、Cloudflare設定など、実際に原因になった事例があれば教えていただきたいです。

0 likes

2Answer

Google Search Consoleを少し触ったウェブサイト初心者ですが、まずサイトを公開すれば魔法のようにGoogleインデックスに即座に乗るということはありません。
Qiitaやその辺のブログのようなサイトがGoogleに勝手に乗るのは、巡回用のサイトマップがしっかりしてるからです。もしくは、インデックス済みのサイトからリンクされていたとかで勝手に掲載されたとかだと思います
?a、&aという識別子を付けてサイトマップを気合で登録するか(サイトマップ登録は極小サイトだと拒否されることが多い、Google側から変更が見えるようになるまで数週間かかる場合がある)、
image.png

検索に乗せたいurlを貼り付けてインデックス登録をひたすら依頼するしかないです。
image.png

0Like

self canonicalとありますが、当該ページが正規化に巻き込まれている(=正規化ページとしてひとまとめに認識されてしまっている)可能性もあるかもしれません。以下はこの観点をClaudeに尋ねた結果です。

実際にGoogleがどのURLを代表として選んでいるかは別軸で、Search ConsoleのURL Inspectionツールで「Google が選択した正規URL」の欄を確認する必要があります。
もしここが自分のURLと異なる値になっていれば、まさに「正規化に巻き込まれている」状態です。self canonicalタグを入れているかどうかに関わらず、Googleはコンテンツの類似度や内部リンク構造から独自に代表URLを選ぶことがあります。
同時期・同構成の別サイトは問題なくインデックスされているとのことなので、インフラ的な欠陥(noindexやrobots.txtなど)よりも、コンテンツ的な要因(テンプレート化されたページが多い、他ページとの類似度が高い、内部リンクの集中度が低いなど)でこちらのURL群が代表として選ばれていない可能性が高いと思われます。

Claudeの言い分に 【self canonicalタグを入れているかどうかに関わらず、Googleはコンテンツの類似度や内部リンク構造から独自に代表URLを選ぶことがあります】 とありますが、実際「 Google がページをインデックスに登録する際、各ページの主要コンテンツ(センターピース)が決定されます。同一のように見えるか、メイン コンテンツが非常に似通っている複数のページを Google が見つけた場合、それらをまとめてクラスタ化します」 という情報があります。

次に、Next.js / Cloudflare の組み合わせでは Vercel と違って独自の設定(デプロイ方式が next-on-pages か opennextjs/cloudflare か、Bot Fight Mode の有無、Cache Rules での HTML キャッシュ挙動など)がいくつか必要となるので、それら設定も怪しいかもしれません。

0Like

Your answer might help someone💌