noindex を使用して検索インデックス登録をブロックする

ページが Google 検索に表示されないようにするには、noindex メタタグをページの HTML コードに含めるか、HTTP リクエストに noindex ヘッダーを返します。Googlebot はそのページを次にクロールしたときに、このタグまたはヘッダーを検出すると、他のサイトがそのページにリンクしているかどうかにかかわらず、そのページを Google 検索結果から完全に削除します。

noindex を使用すると、サイトへのアクセスをページ単位で制御できるため、サーバーに対するルートアクセス権がない場合に便利です。

noindex の実装

noindex はメタタグと HTTP レスポンス ヘッダーの 2 つの方法で実装できます。効果はどちらも同じです。サイトに合った方法を選択してください。

<meta> タグ

サイトのページをほとんどの検索エンジン ウェブクローラのインデックス登録対象から除外するには、次のメタタグをページの <head> セクションに配置します。

<meta name="robots" content="noindex">

ページのインデックス登録を Google ウェブクローラのみが実行できないようにするには:

<meta name="googlebot" content="noindex">

検索エンジン ウェブクローラによっては noindex ディレクティブを別の意味に解釈する可能性があります。このため、他の検索エンジンではページが検索結果に引き続き表示される可能性があります。

詳しくは、noindex メタタグについての記事をご覧ください

Google がメタタグを特定できるようにする

Google がメタタグを認識するには、ページをクロールする必要があります。検索結果にページが引き続き表示される場合は、タグを追加した後でサイトがクロールされていない可能性があります。URL 検査ツールを使用すれば、Google にページの再クロールをリクエストできます。また、robots.txt ファイルがこの URL を Google ウェブクローラからブロックしているため、タグを認識できない、という理由も考えられます。Google からのページのブロックを解除するには、robots.txt ファイルを編集する必要があります。robots.txt の編集、テストは robots.txt テスターツールで行えます。

HTTP レスポンス ヘッダー

メタタグを使用せずに、値が noindex または noneX-Robots-Tag ヘッダーを、レスポンスで返すこともできます。ページをインデックスに登録しないようクローラに指示する X-Robots-Tag を含む HTTP レスポンスの例を次に示します。

HTTP/1.1 200 OK
(…)
X-Robots-Tag: noindex
(…)

詳しくは、noindex レスポンス ヘッダーについての記事をご覧ください