robots.txt入門
robots.txt
意外と知らないかもしれないrobots.txt
に関して入門してみた。
概要
robots.txt
はウェブクローラーやロボットがウェブサイトをクロールする際に、どのページやディレクトリにアクセスできるか制御するための標準的なプロトコル。このファイルによりクローラーに対して、これはアクセスしていい。もしくはアクセスしてほしくない。などと定義することができます。
メリット
自分のサイトの重要なコンテンツを中心にクロールさせることでクロールの最適化が望めます。これによりSEO対策につながります。実際にクローラーはページのコンテンツを判断しページランクをなどを作成し検索エンジンに反映させています。
もちろん、検索エンジンには様々な指標が存在しこれらを複合的に判断し検索エンジンで上位に表示させるページを決定しているので、robots.txt
はその構成要素の判断材料を最適化する方法のひとつでしかありません。
書き方
robots.txt
は次の3つの要素で記述します。
- User-Agent
- Disallow(Allow)
- 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