robots.txt は、ウェブサイトの管理者がウェブクローラー(例: Googlebot、Bingbot など)に対して、サイト内のどの部分をクロール(巡回)していいか、またはしてはいけないかを指示するために使用するテキストファイルです。このファイルはウェブサイトのルートディレクトリ(通常 https://example.com/robots.txt)に配置されます。
ロボット排除規約(Robots Exclusion Protocol, REP)というルールに基づいて動作し、検索エンジンがサイトをクロールする際に最初に確認するファイルです。
役割と目的
- ウェブクローラーの制御
- 特定の部分をクロールして欲しくない場合や、特定のクローラーだけを制限したい場合に利用されます。
- 例: 機密データが置かれているディレクトリや、不要なリソース(開発中のページや重複コンテンツ)へのアクセスを防ぐ。
- サーバー負荷の軽減
- サイトが大規模な場合、すべてをクロールされるとサーバーに負荷がかかるため、不要なページを制限します。
- 検索エンジン最適化(SEO)の補助
- 検索結果に載せたくないページ(例: テストページや内部専用ページ)をクロール対象から外します。
基本的な書き方
robots.txtの例:
# すべてのクローラーに対する指示
User-agent: *
Disallow: /admin/
Disallow: /private/
# 特定のクローラーに対する指示
User-agent: Googlebot
Disallow: /test-page/
各ディレクティブの意味:
- User-agent: 指定するクローラーを指定(
*
はすべてのクローラーを示す)。 - Disallow: クロールを禁止するパスを指定。
- Allow: クロールを許可するパスを指定。Disallow より詳細な制御が可能。
- #: コメント。
robots.txt の設置例
- ルートディレクトリに配置
- URL:
https://www.example.com/robots.txt
- ファイルの確認
- ウェブブラウザや検索エンジンのテストツール(例: Google Search Console)で設定を確認。
注意点
- robots.txtは完全なアクセス制御ではない
Disallow
しても、ファイル自体へのアクセスを防ぐわけではありません。機密情報には適さない。- その場合、パスワード保護やnoindexメタタグの使用を検討するべきです。
- 検索エンジンの遵守は任意
- robots.txtは「ルール」ではなく「リクエスト」なので、すべてのクローラーが従うとは限りません(悪意あるクローラーが無視することも)。
- 意図しないクロール制限に注意
- 誤って重要なページをクロール禁止にすると、検索エンジンにインデックスされない恐れがある。
まとめ
robots.txtは、ウェブサイト管理者がクローラーに対するアクセスルールを定義する重要なファイルです。しかし、完全なセキュリティ対策ではなく、適切なSEOやサーバー負荷軽減などの目的で正しい設定を行う必要があります。
寄付する