セブンデザイン 成果を追求した大阪のホームページ制作会社

  • 2024.06.07

robots.txtとは?書き方や設定方法を解説

robots.txtとは、サーチエンジンの情報収集プログラムになるクローラーを制御することができるテキストファイルのことを言います。

robots.txtを適切に作成して設置することで、サーチエンジンの情報収集効率を高めることが可能です。

当ページでは、robots.txtとは何かや、書き方、4つの要素、設定方法、確認法、注意点を解説します。

robots.txtとは

robots.txtとは、ホームページの情報収集を行うサーチエンジンのクローラーの動作をコントロールするために利用されるテキストファイルのことを言います。

当社のrobots.txt

上記は当社のrobots.txtになり、主な利用方法は、検索結果に出てきてほしくないページをrobots.txtに記述することで、サーチエンジンは該当ページにアクセスすることができなくなり、検索結果に表示されることがなくなります。

サーチエンジン全般だけではなく、例えば、Googleでは出てきて欲しいけど、Bingには出てきて欲しくないや、Googleの画像検索に表示させたくないなど、クローラーごとの制御も可能なので、ホームページの目的に応じて自由に設定することができます。

一般的なホームページであれば、robots.txtを利用する必要はありませんが、大規模サイトでクローラーにスムーズにサイト内を巡回して欲しい場合や、検索結果に表示させたくないページやファイルがある場合に利用されます。

では次に、検索結果に出てきてほしくないページは、noindexタグでも対応が可能なのですが、noindexとrobots.txtでは、どんな違いがあるのかや、使い分けのタイミングを解説します。

robots.txtとnoindexの違い

robots.txtとnoindexは、どちらも検索結果に表示させない設定が行えますが、その違いはクローラーがどのような挙動を行うかです。

  • robots.txt:クローラーがアクセスすらできない
  • noindex:クローラがアクセスしたうえでインデックスを拒否

すなわち、robots.txtでクローラーのアクセスを拒否した場合はクローラーがページに訪問すらできませんが、noindexの場合はクローラーは訪問できますがインデックスはできません。

robots.txtとnoindexを使い分けるタイミング

robots.txtとnoindexを使い分けるタイミングは、クロールバジェットを意識するかどうかです。

クロールバジェットとは、ホームページごとに、クローラーの訪問上限回数が定められているのですが、クローラーの訪問頻度が高いホームページであるほどSEO効果が高くなります。

robots.txtで制御すればクローラーの訪問がないのでクロールバジェットを無駄に消費しませんが、noindexの場合はクロールバジェットを消費してしまいます。

そのため、検索結果に出てくる必要がないページは、noindexよりもrobots.txtでクローラーの訪問を制御したほうが良いのですが、実は1万ページを超えるホームページ以外はnoindexの方が良いと言えます。

と言うのも、Google検索セントラルにクロールバジェットへの意識は10,000ページ以上の場合だけで良いと明記されているので、手間のかかるrobots.txtよりもnoindexの方がスムーズに作業が行えます。

そのため、robots.txtを利用するタイミングとしては、10,000ページを超えているかどうかで判断をして、10,000ページ未満の場合はnoindexで対応しましょう。

robots.txtの書き方

robots.txtの書き方は、サンプルとして、WordPressをインストールしたホームページで表示されるrobots.txtを解説します。

User-agent: *
Disallow: /wp/wp-admin/
Allow: /wp/wp-admin/admin-ajax.php
Sitemap: https://sample.jp/sitemap.xml
Sitemap: https://sample.jp/sitemap.rss

上記をrobots.txtの全体像として把握すれば、以下で解説する4つの要素をより深く理解することが可能です。

robots.txtの4つの要素

全体的なrobots.txtのイメージが分かったと思うので、次は記述する4つの要素を解説します。

User-Agent

書き方にあるUser-agent: *の箇所です。

User-Agentに、制御したいクローラーを入力することで、そのクローラーに対してのみに効力を発揮することができます。

一般的に指定されるクローラーとしては以下があります。

  • すべてのクローラー:*
  • Googlebot:Googlebot
  • AdSense用クローラー:Mediapartners-Google
  • 画像用Googlebot:Googlebot-Image

Googleのクローラーについては、Google検索セントラルのGoogle クローラーとフェッチャーの概要(ユーザー エージェント)のページからご確認ください。

その他のサーチエンジンのクローラーで代表的なものは以下があります。

  • Bing:Bingbot
  • 日本以外のYahoo!:Yahoo Slurp
  • 百度:Baiduspider
  • Naver:Yetibot
  • Apache:ManifoldCF
  • Apple:AppleBot

Disallow

書き方にあるDisallow: /wp/wp-admin/の箇所です。

Disallowには、クロールを制御するページやディレクトリを記載することで、そのページやディレクトリにクローラーがアクセスできなくなります。

Disallowの記述法として、サイト全体とディレクトリ、ページを拒否する場合の3つを紹介します。

サイト全体を拒否する場合
Disallow: /

ディレクトリを拒否する場合
Disallow: /directory/

ページを拒否する場合
Disallow: /private/sample.html

Allow

書き方にあるAllow: /wp/wp-admin/admin-ajax.phpの箇所です。

Allowは、Disallowで指定したディレクトリ内にあるサブディレクトリや特定のページのクロールを許可する場合に利用されます。

Allowを記載する際には注意点が2つあります。

1つ目が、Disallowで指定していないディレクトリやページを記載する必要はなく、記載してしまうと、クローラーが混乱をしてしまい、SEOでマイナス影響を受ける可能性があります。

2つ目が、Disallowで指定したフォルダーを記載し、例えば、Disallow: /wp/wp-admin/と記載をしていたら、Allow: /wp/wp-admin/admin-ajax.phpというように、/wp/wp-admin/を含めなくてはなりません。

Sitemap

書き方にあるSitemap: https://sample.jp/sitemap.xmlとSitemap: https://sample.jp/sitemap.rssの箇所です。

Sitemapは、robots.txtの対象になるホームページがアップロードしているXMLサイトマップとRSS/ATOMになるフィードが、どこに設置されているのかを記載することができ、Sitemapの位置を記載することでクローラーがサイト全体のページを巡回してくれる可能性が高まります。

ただし、Google検索セントラルにSitemapは省略しても良いと記載があり、もしかすればGoogleはSitemapを見ていないかもしれません。

robots.txtの設定方法

作成したrobots.txtは、ファイル名をrobots.txtにして、FTPソフトを使って、ホームページのデータをアップロードしているサーバーにアップロードします。

アップロードする箇所は、ルートドメインになっており、ルートドメイン以外に設置をしてしまうと、サーチエンジンはrobots.txtを無視してきます。

URLで紹介すると以下になります。

OK
http://sample.com/robots.txt

NG
http://sample.com/blog/robots.txt

robots.txtの確認方法

上記の形でrobots.txtのアップロードが終わったら、記述している内容が正しいかどうかを確認しなくてはならず、Googleサーチコンソールにアクセスをして、設定>robots.txt>レポートを開くから確認ができます。

robots.txtの確認方法

従来は細かく確認することができたのですが、現在では、シンプルな確認しかできず、ステータスの列が取得済みになっているのかの確認だけです。

当社ではステータスが取得済み以外のホームページを見たことがないのですが、Search Console ヘルプのrobots.txt レポートのページを見ると、取得済み以外にも、未取得 - 見つかりませんでした(404)と、未取得 - その他の理由が表示され、問題点の提示も行ってくれるようです。

robots.txtの注意点

最後に、robots.txtを設定する前に確認しておきたい注意点を紹介します。

robots.txtを設置しただけではSEO効果は出ない

robots.txtはクローラーを制御するためのものになり、10,000ページ以上のホームページであれば、SEO効果を見込める可能性はありますが、10,000ページ未満のホームページでは、SEO効果が高まることはありません。

間違えて設定するとSEOに悪影響がある

robots.txtの記述法を間違えていると、SEO効果を落としてしまう可能性があります。

例えば、Disallowを記述したディレクトリやページは検索結果に表示されなくなってしまうので、仮にもともとは高いSEO効果を得ていたページが含まれていると、サーチエンジンからのアクセス数が大幅に落ちてしまいます。

robots.txtを指定してもユーザーは閲覧可能

robots.txtは、クローラーを制御するものになるので、robots.txtでDisallowを指定したページでもユーザーは閲覧することができます。

もし、ユーザーにもアクセスされたくないページの場合は、Web認証を設定する必要があります。

robots.txtを無視するUser-Agentも存在する

robots.txtは、サーチエンジンのクローラーに対して、巡回拒否や許可を指示できるファイルです。

しかし、User-Agentによっては無視することがあり、主要なサーチエンジンであれば、記述された内容に従ってくれますが、マイナーなサーチエンジンだと無視してくる可能性があります。

効果が出るまでに1~2週間かかる

robots.txtをアップロードしても、効果が出るまでには1~2週間かかり、サーチエンジンがrobots.txtを確認してから効果が出ます。

まとめ

robots.txtとは何かを解説しました。

robots.txtはクローラーを制御するためのテキストファイルのことを言い、robots.txtをアップロードするだけで、SEO効果が高まることはないと理解しましょう。

robots.txtって何?とお思いの方の参考になれば幸いです。