当サイトは、アフィリエイト広告を利用しています

robots.txtとは?書き方から設定方法までまとめる

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 のどちらかの記載が必須です。
クロールを禁止するディレクトリまたはページを記載します。

allowdisallow ルールの指定をオーバーライドする、つまり👇の場合は、/archive以外がクロールされなくなります。

user-agent: Googlebot
allow: /archive/
disallow: /

robots.txtを作成したら、FTPなどでルートディレクトリに設置します!

robots.txtをテストしよう

まず、robot.txtにアクセスします。

https://example.com/robots.txt

問題なくアクセスできたら、Search Console の robots.txt レポートで確認します◎

以上!

RELATED POST

関連記事

【CSS】scroll-margin-topが便利|固定ヘッダーでページ内リンクが被るのでスクロール位置を調整する
Dockerコンテナ内のファイルを編集する
【コピペでOK】CSSで強調したい文字の上に点をつける|コード解説付き