
robots.txtとは、クロールを制御するための構文が記述されたテキストファイルのことをいい、そのサイトのルートディレクトリに配置されるものです。
言い換えると、検索エンジンがそのサイトを巡回するか、しないかを設定することができる記述を書くファイルのことを言います。
検索エンジンに認識されたくないページがある場合や、大規模サイトなどでクローリングの最適化を行う必要がある場合においては、このrobots.txtでクロールを制御します。
このrobots.txtの作成はSEO内部対策の1つです。
当サイトでは、他のSEO内部対策の施策についても解説しているので、ご興味のある方は併せてご覧ください。
目次
robots.txtとは
robots.txtとは、クロールを制御するための構文が記述されたテキストファイルのことをいい、そのサイトのルートディレクトリに配置されることで機能します。
クロールとは、検索エンジンがインターネット上のページを巡回し、情報を収集することを言います。
SEOを考える上で、このクロールに最適化することは重要であり、そのクロールを制御する際に、このrobots.txtを設定することになります。
検索エンジンの仕組みについては、以下の記事で解説しているので、「クロール」や「インデックス」などの前提知識を知りたい方は、まずはこちらをご覧ください。
robots.txtが必要になるタイミング
robots.txtやその設定方法を理解するにあたって、そもそもなぜクロールを制御する必要が生じるのかが気になるはずです。
robots.txtが必要になるのは、主にSEOの観点から不要なコンテンツを検索エンジンに認識させたくないときです。
不要なコンテンツを検索エンジンに認識させたくない場合
キャンペーンページやプロモーションページなど、そのサイトの配下にありながら、それを検索エンジンに認識させる必要がない場合があります。
そのようなページが継続的に配信され、そのコンテンツ数が多くなると、それらがそのサイトのSEO的な評価に影響を与えかねません。
それらを検索エンジンに認識させないためには、あらかじめrobots.txtによってクロールを制御する必要があります。
大規模なサイトで、やむを得なく質の低いコンテンツが生成される場合
大規模なサイトとは、URLが数千〜数万の規模で生成されるサイトのことです。
Amazonやアメーバブログなどの大規模なサイトは、この条件に当てはまります。
この大規模なサイトにおいては、そのコンテンツの質をサイト運営者が担保することは難しく、質の低いコンテンツや重複したコンテンツが生成されます。
このようなサイト運営者は、Googleが発表している「クロールの割り当てに影響する要因」を満たさないように回避する必要があります。
このようなケースは、ほとんどのサイト運営者にとっては問題にならないかもしれません。
しかし、これから大規模なサイトを運営することを予定している方は、このことを念頭に置いておくといいことでしょう。
robots.txtのSEO効果
robots.txtによって、クローラビリティの向上が期待できる点から、SEO効果があると言えます。
それまで不要なコンテンツがクロールされていた場合は、それを制御し、そのサイトのより重要なページがクロールされやすくなるので、SEOの改善がされる可能性があります。
robots.txtとnoindexタグの違い
robots.txtと似たように扱われやすいものにnoindexタグがあります。
- robots.txt:クロールを制御
- noindexタグ:インデックスをさせない(クロールはされる)
robots.txtとnoindexタグは、以上のように違いがあります。
例えば、既に検索結果として掲載されている(インデックスされている)ページを、検索結果から削除したい場合は、noindexタグを使います。
既にインデックスされているページに対して、robots.txtを使うことで検索結果から削除することはできません。
robots.txtの設定方法
ここからは、robots.txtの設定方法を解説します。
robots.txtの中身は、以下の4つからなっています。
- User-Agent
- Disallow
- Allow
- Sitemap
robots.txtの例
robots.txtの例として、WordPressでデフォルトで設定されているものをご紹介します。
User-agent: *
Disallow: /wp/wp-admin/
Allow: /wp/wp-admin/admin-ajax.php
Sitemap: http://www.example.co.jp/sitemap.xml
User-Agent
ユーザーエージェントとは、ユーザーが利用しているOS・ブラウザのことを指します。
ユーザーエージェントによって、クローラーに違いがあることがあり、そのそれぞれのクローラーを指定するものとしてユーザーエージェントトークンが使われます。
パソコン用 Googlebot:Googlebot
動画用 Googlebot:Googlebot-Video/Googlebot
APIs-Google:APIs-Google
User-Agentでは、このユーザーエージェントトークンを記述し、クローラーを指定します。
基本的に、特定のユーザーエージェントトークンを指定することは少なく、全てを指定することを示す「*」が使われることがほとんどです。
Disallow/Allow
Disallowでは、クロールを禁止するディレクトリ・ファイルを指定します。
反対に、AllowではDisallowで禁止したディレクトリ・ファイルに対して、クロールを許すものを指定します。
基本的にクロールを制限する機会にrobots.txtは使われるため、Allowの使用頻度は低くなります。
特定のディレクトリへのクロールをDisallowで禁止し、その中に例外的にクロールを許す場合などにAllowを使用します。
【サイト全体でクロールを禁止】
User-agent: *
Disallow: /
【特定のディレクトリのクロールを禁止】
User-agent: *
Disallow: /example/
※ディレクトリ名の後には、スラッシュをつける
【特定のページだけクロールを禁止】
User-agent: *
Disallow: /example.html
【一部のディレクトリを除いて、サイト全体でクロールを禁止する】
User-agent: *
Disallow: /
Allow: /public/
より詳しく知りたい方は、下記リンクより、Google公式の説明を参考にしてみてください。
Sitemap
Sitemapは、sitemap.xmlの場所を知らせるものです。
これを記述することで、クローラーにサイトマップを認識させ、効率的なクローラーを促すことができます。
サイトマップには、HTMLサイトマップとXMLサイトマップがあり、SEO対策として検索エンジンに認識させる必要があるのは、XMLサイトマップです。
サイトマップについては、以下の記事で解説しているので、こちらもご覧ください。
robots.txtを作る前に、他の方法も検討する
検索エンジンに認識されたくないコンテンツがある場合は、robots.txtを使うべきか、noindexタグを使うべきか、それぞれの役割を理解した上で選ぶ必要があります。
当サイトでは、robots.txtの作成の他にも、SEO内部対策について解説しているので、ぜひこちらも併せてご覧ください。
Webサイト制作・Webマーケティングについてご興味のある方は、ぜひ私たちにご相談ください。