robots.txt は、ウェブクローラに対してウェブサイトへのアクセスをしないように指示を伝えるためのファイルです。
初めてウェブサイトに robots.txt の導入することを考えている場合はこの記事が役立つでしょう。
robots.txt の役割
robots.txt
はウェブサイトのルートに配置されているファイルです(例えば、www.example.com/robots.txt
)。このファイルは、クローラー にウェブサイトへのアクセスを許可するか、禁止するかを指示します。
- example.com/
- ├ public_html/
- │ ├ index.html
- │ ├ robots.txt
注意点
全てのクローラが遵守しているわけではない
- robots.txt の設定でアクセスを禁止してもクローラーが必ずそれを守るという保証はありません。
→ 禁止してもアクセスされることがある。(例えば、Google-Read-Aloud は robots.txt
のルールには従いません。)
- robots.txt は公開ファイルです。
→ アクセスされたくないパスを明示することになります。
robots.txt
はアクセス制限としては使用できません。セキュリティ上見られて困るものはパスワードをかけるなどする必要があります。
ウェブページの場合、インデックスが付かなくなるわけではない(Google)
Googleでは、robots.txt によってアクセスが禁止されているページでも、他のサイトからリンクされていればインデックスに登録され、検索結果に表示されることがあります。
その場合、ページの説明が「このページに関する情報はありません」といったメッセージになります。
robots.txt と noindexディレクティブの使い分け
robots.txt
は、基本的にはクローラのサイトへのトラフィックを管理するために使用します。
Webページの場合、検索結果で表示されないようにするには noindex ディレクティブで対応します。robots.txt
には含めないでください。
ただし、画像や動画などは robots.txt で禁止することにより検索結果から除外されます。
robots.txt の書き方
前提:
- ウェブサイトの公開ルートに「robots.txt」という名前でファイルを作成します。
- 文字コードはUTF-8を使用してください。
- サイトに配置できる
robots.txt
ファイルは 1 つだけです。 robots.txt
ファイルは、サブドメインや標準以外のポートに適用できます。
書き方:
- ルールは行ごとに記述します。
- ルールは上から順番に適用されます。
- 1つの
User-agent
と1つ以上のDisallow
またはAllow
で グループ を作ります。User-agent
に対象とするロボットを指定します。Disallow
に禁止とするパスを指定します。Allow
に許可したいパスを指定します。(Disallowで指定されなかったスコープはAllowです。)
Sitemap
にサイトマップのパスを指定します。これは省略でき、複数指定も可能です。#
以降は行コメントとして扱われます。1行まるごとでも行の途中からでも構いません。
- # 1つ目のグループ
- User-agent: * # 全てのロボットを対象
- Disallow: /private/
- Disallow: /*.xls$ # .xls を禁止
-
- # 2つ目のグループ
- User-agent: bingbot # 特定のロボットを対象
- Disallow: /
- Allow: /public/ # オーバーライド
-
- # 3つ目のグループ
- User-agent: Googlebot Allow: # すべて許可
- Sitemap: https://example.com/sitemap.xml
- Sitemap: https://www.example.com/sitemap.xml
1つ目のセクションの User-agent: *
は、このセクションがすべてのロボットに適用されることを意味します。そして、Disallow: /sitemap.xml
の部分で sitemap.xml
のみアクセスを禁止しています。
2つ目のセクションの User-agent: BadBot
では特定のロボットを対象にしています。そして、 Disallow:/
で、全てのアクセスを禁止しています。
ユーザーエージェント名
代表的な ユーザーエージェント名は次の通りです。
Googlebot | Google の標準ウェブクローラ |
Googlebot-Image | Google の画像検索 |
Googlebot-Video | Google の動画検索 |
Googlebot-News | Google のニュース検索 |
bingbot | Microsoft Bing の標準ウェブクローラ |
さらに詳しく知りたい場合はSearch Console ヘルプやBing webmaster help & how-toが参考になります。
robots.txt のテストツール
robots.txt はGoogle’s robots.txt analysis toolでテストすることができます。ただし、Google Search Console でサイトを登録しておく必要があります。
更新した robots.txt を Google に送信
robots.txt テスター ツールの送信機能を使用して、サイトに新しい robots.txt
ファイルを配置し、Google にクロールとインデックス登録をリクエストすることが簡単にできます。詳しくは、robots.txt テスターで robots.txt をテストするをご覧ください。