【WEBサイト運用】クローラー対策にrobots.txtを設定しよう
robots.txt を設置し、アクセスしてほしくないパスやサイトマップの置き場所など、クローラーにルールを伝えられます。
対象
- WEBサイトを制作している
robots.txt の役割
現在制作しているサイトや記事など、世に配信するコンテンツを検索エンジン
に表示させるため、ロボットがサイトを巡回して情報を収集してきます。
そのため、よく聞くSEO対策
でも説明される通り、クローラーに分かりやすいサイト作りが重要視されているわけです。
昔は手作業での情報収集だったようですが、現在はロボットに任せているのでrobots.txt
にてルールを伝えてあげます。
※ Htmlにnoindexタグをつけることで、ページ毎に制限をつけることもできます
現在の状況を確認
WEBサイトの構築環境や専用のライブラリによって、自動生成されている場合もあります。
念の為、現在のサイトにrobots.txtが設定されているか確認してみましょう。
ドメインを対象の名前に書き換えて、アドレスバーで以下を叩いてみましょう。
https://ドメイン/robots.txt
当サイトの場合(https://theblueback.com/robots.txt)
User-agent: *
Disallow: /policy
Sitemap: https://theblueback.com/sitemap.xml
このような内容が表示されていればrobots.txtは設定されています。
※ おつかれさまでした。
設定方法
設定方法はとても簡単です。
ルートにrobots.txtが来るように設定します。
/robots.txt
Nuxtの場合はstatic以下に配置しましょう。
※ 当ブログではNuxtの例が多いので
記述内容
当サイトの設定内容は比較的簡素ではあります。
- User-agent:* -> どんなクローラーでも許可しますよ!
- Disallow: /policy -> プライバシーポリシーページはクロールしないでね!
- **Sitemap: https://theblueback.com/sitemap.xml**-> サイトマップはここにあるよ!
User-agent
は許可するクローラーの種類を指定します。
クローラーの種類は様々ありますが、種類別に設定することは基本的にないので*
で十分かと思います。
※ Googlebot. Bingbot. Yahoo Slurp. など
詳しい指定方法はGoogle Search Centralからご確認ください。
補足
サイト内で発生するエラー内容によって、再試行が頻繁に実行される場合があるようです。
もし期待通りのクロールが行われない場合、サーチコンソールのログを確認してみましょう。
Google Search Centralに詳しく書かれています(割と見落としがちです)
エラーと HTTP ステータス コードの処理
robots.txt をリクエストした際にサーバーから返される HTTP ステータス コードによって、Google のクローラによる robots.txt ファイルの扱い方は異なります。次の表には、Googlebot による HTTP ステータス コードに応じた robots.txt ファイルの扱い方がまとめられています。