robots.txtとは何か
robots.txtは、ウェブサイトのルートディレクトリに配置するテキストファイルで、検索エンジンのクローラーに対してクロールの許可・拒否を指示する役割を持ちます。例えば管理画面や重複コンテンツなど、検索結果に表示させたくないページへのクロールを制御できます。ただし、robots.txtはあくまで「お願い」であり、悪意のあるクローラーが指示を無視する可能性がある点は理解しておきましょう。
基本構文を覚えよう
robots.txtで使用する主なディレクティブは以下の4つです。
- User-agent:対象となるクローラーを指定します。「*」ですべてのクローラーを対象にできます。
- Disallow:クロールを拒否するパスを指定します。
- Allow:Disallowで拒否した範囲の中で、例外的にクロールを許可するパスを指定します。
- Sitemap:XMLサイトマップのURLを指定します。クローラーがサイト構造を効率的に把握するのに役立ちます。
基本例:User-agent: * / Disallow: /admin/ / Disallow: /tmp/ / Sitemap: https://example.com/sitemap.xml のように記述します。robots.txt診断ツールで構文の正しさを確認できます。
WordPress向け設定例
WordPressサイトでは、管理画面(/wp-admin/)やプラグインディレクトリへのクロールを制限しつつ、wp-admin内のadmin-ajax.phpはプラグインが利用するため許可するのが一般的です。また、検索結果ページ(/?s=)やタグアーカイブなど、重複コンテンツになりやすいページのクロールを制限することもSEO上有効です。
一般サイト向け設定例
一般的な企業サイトやECサイトでは、カート画面、マイページ、内部検索結果ページ、テスト環境のディレクトリなどをDisallowに設定します。一方、商品ページやカテゴリページなどSEO上重要なページは確実にクロールできる状態にしておく必要があります。
よくある間違いと注意点
- 全ページブロック:「Disallow: /」と記述すると、サイト全体がクロール拒否されます。サイトリニューアル時に設定したまま解除し忘れるケースが多いため注意してください。
- CSS/JSのブロック:CSSやJavaScriptをブロックすると、Googleがページを正しくレンダリングできず、評価に悪影響を与えます。
- Crawl-delay:Googlebotはcrawl-delayディレクティブを無視します。クロール頻度を調整したい場合はSearch Consoleから設定しましょう。
robots.txtのテスト方法
robots.txtを変更したら、必ずテストを行いましょう。Google Search Consoleの「robots.txtテスター」や、SEO診断Proのrobots.txt診断ツールで構文エラーや意図しないブロックがないか確認できます。また、サイトマップ生成ツールと合わせて使うことで、クローラーにとって最適なサイト構造を実現できます。
あなたのrobots.txtを今すぐチェックしましょう
SEO診断Proの総合SEO診断を試す