robots.txtジェネレーター

クローラーごとのallow/disallowルール、任意のクロール遅延、サイトマップ参照を備えたrobots.txtファイルを作成します。

ルール

robots.txt


          
        

user-agentに*を指定するとすべてのクローラーにルールが適用されます。Googlebotのように特定のボット名を指定することもできます。Disallowはパスのクロールを禁止し、Allowは明示的に許可します(disallowしたフォルダー内に例外を設けたいときに便利です)。

仕組み

ジェネレーターはルールをユーザーエージェントごとにグループ化します。そのためGooglebot用に3つの別々の行に書かれたルールは、1つのUser-agent: Googlebot行の下にまとめられ、パーサーが期待するように各グループは空行で区切られます。パスが空のルールは無視されます。すべてのルールを削除すると、出力はUser-agent: *と空のDisallow:に戻ります。これは「何もブロックしない」を表す正しい方法です。

robots.txtについて人々を混乱させがちな2つのことがあります。1つ目、Crawl-delayはBingとYandexが尊重するためこのツールに含まれていますが、Googlebotは完全に無視します。Googleは2019年にサポートされていないディレクティブの扱いを公式に終了しました。2つ目、そしてより重要なこと。Disallowはページを検索結果から削除するのではなく、クロールを止めるだけです。ブロックされたURLは、外部からのリンクによって説明文なしでインデックスされ続けることがあります。ページを完全にインデックスから外したい場合は逆をやります。クロールを許可した上で、そのページにnoindexタグを設定してください。

ファイル全体は、入力中にこのページのJavaScript内で組み立てられます。パスやボット名はどこにも送信されません。開発者ツールのネットワークタブで確認できます。

よくある質問

robots.txtで実際にGoogleからページを隠せますか?

robots.txtがブロックするのはクロールであって、インデックス登録とは限りません。disallowしたURLでも、他のサイトからリンクされていれば(説明文なしで)検索結果に表示されることがあります。ページを検索結果から完全に除外したい場合は、代わりにnoindexメタタグを使ってください。この場合、ページはクロール可能である必要があります。

robots.txtはどこに置く必要がありますか?

ドメインのルート、つまり正確に https://example.com/robots.txt に置きます。それ以外の場所ではいけません。クローラーはサブフォルダーの中を探しません。

空のDisallowは何を意味しますか?

後ろに何も書かないDisallow:は「何も禁止しない」という意味で、そのuser-agentに対してすべてを許可するのと同じです。これがこのツールのAllow: /の初期設定です。