一部コンテンツをインデックスして、他の全てをGoogleから隠す方法

会員向けコンテンツなど非公開ページを持つサイトで、公開コンテンツだけをインデックスして、他の全てをGoogle隠す方法をまとめました。

どのような時に必要な処理か?

サイトの種類によっては、Googleからの導線は最低限残しておいて、基本的にはGoogleにデータを渡したくないことがあります。

トップページなど、ユーザーが「サイト名指定で検索」しそうなページ(トップページや運営者情報ページなど)だけをGoogleにインデックスして、その他のページは「Googleにだけ知られないようにしたい」というケースです。

Googleから一部ページ以外を隠す方法

Googleからコンテンツを隠す方法は下記の記事にまとめました。

今回は「一部ページだけ」解放するという条件ですが、クローラーに対する対応で設定が異なります。

クロールはして良いけどインデックスはしないケース

この場合は、HTMLヘッダのmetaタグに「<meta name="robots" content="noindex">」を追加する方法が良いでしょう。ページごとの対応も簡単です。

ただし、この場合インデックスは回避できますが、ページの中身は読まれます。

クロールもインデックスもして欲しくないケース

この場合は、Google Botからのアクセスをページごとに拒否することになるので、

  • サーバー側で処理をする
  • DNS側で処理をする

という2択になるでしょう。基本的にはWebサーバー側で処理する方法が、細かい条件などを設定できるので理想的です。

Webサーバーの設定ができない or 知識がない場合は、Cloudflareのファイアウォールを使うのがオススメです。

Googleに登録したいページをインデックスする

Google Botを拒否すると、クロール頻度が下がるため、トップページや運営者情報ページなど、Googleに公開するページについては、Search Consoleでサイトマップを登録しましょう。

サイトマップを登録することで、インデックスを促進することができます。

Google Search Console


一部コンテンツをインデックスして、他の全てをGoogleから隠す方法を見てきました。

理屈は単純なのですが、しっかり設定しようとすると意外と面倒だったりするので、設定する際はきちんとテストをしつつ設定しましょう。