Google検索セントラルを見れば書いてあるんだけど、パッと理解できるように自分なりに噛み砕いて解釈したものをメモがてら残します。
サクっと思い出したい時用のサンプル貼っておく👇
User-agent: Googlebot
Disallow: /nogooglebot/
User-agent: *
Allow: /
Sitemap: https://www.example.com/sitemap.xml
目次
robots.txtとは?
主な目的
- クローラーに対して、サイトのどの URL にアクセスしてよいかを伝えるもの
- クローラーが一度に大量のページにアクセスすることで、サーバーに負担がかかることを防ぐ
つまりSEO的なメリットは、robots.txtを使ってクロール不要なコンテンツを伝えることでクロールの最適化が見込めること。
注意点
- Google にウェブページが表示されないようにするためのものではない
- Googlebotは robots.txt ファイルの指示に従うが、他のクローラーがこの指示に従うかどうかは任意
- Google にウェブページが表示されないようにしたいなら、
noindex
するかパスワード保護すること
認識していなかったのですが、robots.txtでクロール不要にしていても他サイトからリンクされている場合インデックス登録されることがあるらしい📝
robots.txtのガイドライン
基本的なルール
robots.txt
というファイル名で作成し、ルールを記載する(※文字コードはUTF-8)- サイトのルートにrobots.txtを設置する(サブディレクトリは不可×)
- robots.txtをテストする
robots.txtの書き方
下記がすごくわかりやすかったので引用させていただきます🙇♀️
https://www.seohacks.net/blog/965/
- どのロボットが
- どのページ/ディレクトリ/ファイルに
- クロールしても良い/クロールしてはいけない
robots.txtには基本的に上記を記述します。
どのロボットが [ user-agent: ]
必須項目です。ルールの適用対象となるロボットを指定します。
参考:Google の一般的なクローラーの一覧
user-agent: Googlebot ←ここ
allow: /archive/1Q84
disallow: /archive
使いそうなのをピックアップしてみた↓
- Googlebot
- Googlebot-Image
- Googlebot-Video
全てのロボットを対象としたい場合は「*
」を指定します(AdsBot クローラーを除く)
どのページ/ディレクトリ/ファイルに
ポイントはこの辺。
単純なパス一致(前方一致やワイルドカードなど)は利用できるっぽい。(参考:パスの値に基づく URL の一致判定)
- ルールの対象がページの場合:ブラウザに表示される完全なページ名にする
- 先頭は
/
文字 - 対象がディレクトリの場合は、末尾を
/
にする
Disallow: /private/ # ディレクトリ全体を禁止
Disallow: /private # /privateという単一ページを禁止
クロールしても良い/クロールしてはいけない [ disallow: / allow: ]
disallow
あるいは allow
のどちらかの記載が必須です。
クロールを禁止するディレクトリまたはページを記載します。
allow
はdisallow
ルールの指定をオーバーライドする、つまり👇の場合は、/archive
以外がクロールされなくなります。
user-agent: Googlebot
allow: /archive/
disallow: /
robots.txtを作成したら、FTPなどでルートディレクトリに設置します!
robots.txtをテストしよう
まず、robot.txtにアクセスします。
https://example.com/robots.txt
問題なくアクセスできたら、Search Console の robots.txt レポートで確認します◎
以上!