robots.txt

https://bazubu.com/robots-txt-16678.html

 

robots.txtの書き方

robots.txtの基本の型は以下の通りだ。

User-Agent:*
Disallow:

Sitemap:http://example.com/sitemap.xml

また、各項目の簡単な役割説明は以下となる。

命令 説明
User-agent 命令を与えるクローラーを「ユーザーエージェント」を使って指定する
Disallow クロールをブロックするディレクトリやページを記入する
Allow クロールを許可するディレクトリやページを記入する(基本的に使用しない)
Sitemap sitemap.xmlのURLを記入する事で、sitemapの場所をクローラーに知らせる

では実際に、各項目の詳しい書き方を見ていこう。

User-Agent

この項目は「どのクローラーの動きを制御するか」を指定するものだ。
基本的には、全てのクローラーへの指示を表す「*」と記入しておけば問題ない。

より細かい設定を行いたい場合は、以下のサイトを参考にしよう。

Googleのクローラー一覧:「Googleのクローラ(ユーザーエージェント)
その他クローラー一覧:「クローラ(ロボット)のユーザーエージェント(UA)一覧

Disallow

この項目は、クローラーのアクセスを制御するページを指定するものだ。

パターンが多いので順番に紹介していく。

  • サイト全体のブロック:スラッシュのみ

Disallow: /

  • 特定のディレクトリとその中身を全てブロック:ディレクトリ名の後にスラッシュを入力

Disallow: /junk-directory/

  • 特定のページをブロック:ブロックしたいページを指定

Disallow: /private_file.html

  • 特定のファイル形式(例:.gifファイル)をブロック:以下の記法で指定

Disallow: /*.gif$

  • 特定の文字列(例:?)を含む全てのURLをブロック:以下の記法で指定

Disallow: /*?

より豊富な実例はGoogleが提供するこちらのページ内で解説されている。(robots.txtファイルを作成する)

Allow

この項目はクロールを許可するページを指定するものため、使う事は少ない。

使うケースとしては「クロールを制御しているディレクトリ下の特定のページだけはクローラーが回るようにしたい場合」だ。

例えば「http://example.com/sample」下の全ページをブロックするが、例外として「http://example.com/sample/important.html」のみクロールを許可したいという場合は、以下のように記述する。(AllowはDisallowよりも優先される。)

Disallow:/sample/
Allow:/sample/important.html

Sitemap

この項目にサイトマップのURLを記載する事で、クローラーがサイトマップにアクセスしやすくなる。

サイトのクローラビリティに繋がるので必ず記載しておこう。(記載は以下のように絶対パスで行う。)

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