robots.txtで全体をDisallow:防げることと防げないこと

robots.txtで全体をDisallow

robots.txtで全体をDisallow:防げることと防げないこと | We.Inc

User-agent: * と Disallow: / が実際に何をするのか、ブロックしたページがGoogleに表示されることがある理由、robots.txt内のnoindexが無視される理由を解説します。ルール判定ツール付きです。

User-agent: * に続けて Disallow: / と書いた2行は、行儀のよいすべてのクローラーに、そのホストのどのページも取得しないよう求めます。ただし、検索結果からページを削除するものではありません。Googleによると、他のサイトからリンクされていれば、ブロックしたアドレスも説明文なしで掲載されることがあります。ページを検索結果に出さないには、noindexかパスワードを使いましょう。

クローラーや検索ユーザーを遠ざける方法の比較

robots.txtはドメインのルートに置くプレーンテキストのファイルで、検索エンジンがページを読むために送り出すプログラムであるクローラーに、どのパスを取得してよいかを伝えます。すべてをDisallowするファイルはステージング環境や新しいサイトでよく使われますが、公開時にうっかり残されやすい行でもあります。下の判定ツールで自分のルールをテストしましょう。

よくある質問

Disallow: / でサイトはGoogleから消えますか?

いいえ。Googlebotがページを読むのは止められますが、Googleのドキュメントによると、Disallowされた URL もインデックスに登録され、スニペットなしで表示されることがあります。検索結果からページを外すには、Googleにクロールさせたうえで noindex を返しましょう。

robots.txtに noindex を書けますか?

Googleのインデックス登録のブロックに関するページには、robots.txtファイル内の noindex ルールはサポートされていないと明記されています。noindex はページの head 内の robots メタタグに書くか、PDFなどのファイルでは X-Robots-Tag レスポンスヘッダーに書きます。

Googleは Crawl-delay に従いますか?

いいえ。Googleのrobots.txt仕様では、読み取るフィールドとして user-agent、allow、disallow、sitemap が挙げられており、crawl-delay はサポート対象外とされています。Bingのウェブマスター向けブログによると、Bingbot は1秒から30秒の範囲で Crawl-delay に従います。

robots.txtがサーバーエラーを返したらどうなりますか?

RFC 9309 では、サーバーエラーでファイルにアクセスできない場合、クローラーは全面的なDisallowとみなさなければならないとしています。Googleは最初の12時間クロールを停止し、その後は最後に正常に取得したコピーを使います。そのため、壊れたファイルによってクロールが止まることがあります。

robots.txtの変更はどれくらいで反映されますか?

Googleは通常ファイルを最大24時間キャッシュし、RFC 9309 でもクローラーはそれより長くキャッシュを使うべきではないとしています。ブロックを削除してから気付かれるまで、最大1日ほどかかると考えておきましょう。

クローラーがルールを読む仕組み

ステージングサイトと公開前のサイト

コピーして使えるレシピ

以下の各ファイルは、https://staging.example.com/robots.txt のように、1つのホストのルートに置きます。

すべてのクローラーをすべてのパスからブロック

定番のステージング用ファイルです。公開前に削除しましょう。

すべてを許可

Disallow の値が空なら何もブロックしません。サイトマップのアドレスを追加して、クローラーがすべてのページを見つけられるようにしましょう。

1つのフォルダー以外をすべてブロック

長い Allow のパスが、1文字の Disallow のパスより優先されます。

代わりにページを検索結果から外す

ページはクロール可能なままにして、head にこのタグを追加します。レスポンスヘッダーの形式は、PDFや画像にも使えます。

Disallow判定ツール

あなたのrobots.txt

クローラー名

テストするパス

結果

許可:{p} はクロールできます。

ブロック:{p} はクロールできません。

使われたグループ:{v} を指定したグループ。

使われたグループ:User-agent: *(このクローラーを指定したグループはありません)。

該当するグループがないため、すべて許可されます。

判定を決めた行 {n}:{v}

このパスに一致するルールがないため、許可されます。

貼り付けたテキストに対し、RFC 9309 に従ってブラウザー内で動作します。何も取得やアップロードはされません。

無料で始める · クレジットカード不要

関連: ガイド|Webマーケティングと集客を学ぶ

製品

ご利用いただける方

機能

リソース

会社情報

サイトマップを見る