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