🍣

robots.txt入門

2023/10/02に公開

robots.txt

意外と知らないかもしれないrobots.txtに関して入門してみた。

概要

robots.txtはウェブクローラーやロボットがウェブサイトをクロールする際に、どのページやディレクトリにアクセスできるか制御するための標準的なプロトコル。このファイルによりクローラーに対して、これはアクセスしていい。もしくはアクセスしてほしくない。などと定義することができます。

メリット

自分のサイトの重要なコンテンツを中心にクロールさせることでクロールの最適化が望めます。これによりSEO対策につながります。実際にクローラーはページのコンテンツを判断しページランクをなどを作成し検索エンジンに反映させています。

もちろん、検索エンジンには様々な指標が存在しこれらを複合的に判断し検索エンジンで上位に表示させるページを決定しているので、robots.txtはその構成要素の判断材料を最適化する方法のひとつでしかありません。

書き方

robots.txtは次の3つの要素で記述します。

  1. User-Agent
  2. Disallow(Allow)
  3. Sitemap

User-Agent

クローラーまたはロボットの識別子を指定し、特定のクローラーやロボットに対してルールを設定するために使用する。

User-Agent: Googlebot
User-Agent: Bingbot
User-Agent: * # すべて

Disallow

特定のクローラーに対してアクセスを禁止するページやディレクトリを指定することができる。加えて、パスを指定する際に、ワイルドカード(*)を使用してパターンに一致させることもできる。

Disallow: /secret/
Disallow: /images/*.png

逆にAllowを指定することでアクセス許可することもできる。基本的にはDisallowの逆の働きをするが、すべてのクローラーやロボットでサポートされているわけではない。

Sitemap

必須ではないが、ウェブサイトのサイトマップファイル(通常は sitemap.xml という名前)の場所を指定できる。サイトマップはクローラーにウェブサイト内のページの構造を伝えるのに役立つ。

Sitemap: https://sample.com/sitemap.xml

便利なツール

robots.txt テスターを使用することで、robots.txt ファイルでサイト内の特定の URL に対して Google のウェブクローラがブロックされているかどうかを確認できます。たとえば、このツールを使用して、Google 画像検索に表示されないようにしたい画像の URL を Googlebot-Image クローラがクロールできるかどうかをテストできます。

Discussion