robots.txtの役割と基本構造
robots.txtは、ウェブサイトのルートディレクトリに配置するテキストファイルであり、Googlebotなどの検索エンジンのクローラーに対して、サイト内のどのパスへのアクセスを許可または禁止するかを伝えるためのものです。
このファイルは、主に以下のような目的で使用されます。
- ウェブサイトの管理者が、クローラーによるサイトへのアクセス方法を制御する。
- 開発者が、robots.txtファイルの作成や修正を正確に行う。
- 特定のクローラーに対して、ウェブサイトの特定エリアへのアクセスを制限する。
- 重要なページが誤ってクローラーからブロックされないように確認する。
デフォルトの状態では、すべてのクローラーを対象とする User-agent: * と、管理画面などを想定した Disallow: /admin のルールが設定されています。
ユーザーエージェント(User-agent)の設定規則
クローラーごとに異なるアクセス制限を設けるには、ユーザーエージェント(User-agent)を指定します。すべてのクローラーを対象にする場合は * を使用します。
ユーザーエージェントの設定には以下の制約があります。
- ユーザーエージェント名にスペースを含めることはできません。スペースが含まれている場合は、「スペースを含まないユーザーエージェント名を1つ入力するか、すべてのクローラーを対象にする場合は「*」を使用してください。」というエラーが表示されます。
- 同じユーザーエージェントが複数のグループに分かれて記述されている場合、「Googleは、同じユーザーエージェントを指定するグループを統合して処理します。」という警告が示されます。
許可(Allow)と禁止(Disallow)の競合と優先順位
クローラーの挙動を制御するパスルールを設定する際、パスの記述方法には厳格なルールが存在します。
- ルールのパスは必ず
/から開始し、スペースを含めることはできません。このルールに反すると、「ルールのパスは「/」で始まる必要があり、スペースを含めることはできません。」と判定されます。 - 末尾の一致を指定する
$記号は、パスの最後にのみ使用できます。途中に含まれている場合は、「「$」はルールパスの末尾にのみ使用してください。」というエラーになります。 - 同一のユーザーエージェントに対して全く同じルールが複数存在する場合、「このルールは同じユーザーエージェントに対して重複して指定されています。」と警告されます。
Googleにおける優先順位の仕組み
Googlebotなどのクローラーがパスを評価する際、以下のマッチング規則が適用されます。
- 最長一致の原則: 最も長く一致するパスのルールが優先されます。
- 同一の長さにおける優先度: Allow(許可)とDisallow(禁止)で全く同じ長さのパスが指定されている場合、Allowが優先されます。この競合が発生すると、「AllowとDisallowで同じパスが指定されています。Googleは、両方の指定の具体性が同じである場合、Allowを適用します。」という警告が表示されます。
サイトマップ(Sitemap)の指定
robots.txt内にサイトマップのURLを記述することで、検索エンジンにサイトの構造を効率的に伝えることができます。
サイトマップURLを登録する際は、必ず http:// または https:// から始まる完全なアドレスを入力する必要があります。不完全なURLを入力した場合は、「サイトマップのURLには、http:// または https:// で始まる完全なアドレスが必要です。」というエラーが発生します。
ファイルサイズ制限と検証機能
作成されたrobots.txtのデータ量が大きくなりすぎると、検索エンジンが正しく処理できなくなる可能性があります。本ツールでは、生成されたrobots.txtの文字数が100,000文字を超えた場合、「このrobots.txtは大きすぎるため、ここでは検証できません。」という警告を出力します。
検証エリアでは、現在のルール数(「{count}個のルール」)や、確認が必要な問題の件数(「確認が必要な項目が {count} 件あります。」)がリアルタイムで表示されます。問題がない場合は「構文エラーやルールの競合は見つかりませんでした。」と表示されます。
特定のURLパスとクローラー名を入力してテストを実行すると、以下のいずれかの結果が得られます。
- 許可 —
{rule}: 指定したパスへのアクセスが許可されている状態と、それを決定したルールを示します。 - ブロック —
{rule}: 指定したパスへのアクセスが禁止されている状態と、それを決定したルールを示します。 - 一致するルールはありません。Googleはデフォルトでこのパスへのアクセスを許可します。: どのルールにも該当しないため、デフォルトでアクセス可能であることを示します。
プライバシーとデータ処理について
本ツールでのクロールルールの作成および検証処理は、すべて利用者のブラウザ内で行われます。入力されたデータや生成されたルールが外部のサーバー(BroBroGoなど)にアップロードされることはありません。
よくある質問(FAQ)
このジェネレーターでrobots.txtに何を追加できますか?
ユーザーエージェントのグループ、Allow(許可)およびDisallow(禁止)パス、そして1つ以上のサイトマップURLを追加できます。プレビューに表示された内容は、そのままrobots.txtファイルとしてコピーして使用できます。
パスチェッカーはどのようにルールを選択しますか?
Googleの優先順位ルールに従います。基本的には、最も長く一致するパスのルールが優先されます。一致するAllowルールとDisallowルールの具体性がまったく同じである場合は、Allowルールが優先されます。
Disallowを設定すれば、ページはGoogle検索から削除されますか?
いいえ。ブロックされたページであっても、他のページからリンクされている場合は検索結果に表示されることがあります。検索結果に表示させないようにするには、noindexタグを使用するか、アクセス制限を設定するか、ページ自体を削除してください。なお、本ツールでは noindex、アクセス制御、またはページ削除の有無に関する検証は行いません。