この記事では、SEO 初級者からよく聞かれる質問についてアドバイスします。今回取り上げる質問はこちらです。
robots.txt
は、検索エンジンのクロールを拒否する(「ブロックする」とも表現する)URLがサイト内にあるときに利用します。でも、ブロックするURLがないときにもサーバーに置く必要があるのでしょうか?
回答としては、いくつかの方法があります。まず、大きく分けると、次の 2 パターンです。
- 1.
robots.txt
を置かない - 2.
robots.txt
を置く
順に説明します。
robots.txt を置かない
ブロックするURLがない場合、言い換えると、すべてのURLのクロールを許可する場合は robots.txt
をサーバーに置く必要はありません。最もシンプルな方法です。
注意点としては、robots.txt
にアクセスした場合に (例 https://www.examaple.com/robots.txt)、404
の HTTP ステータスコードを返さなければならないことが挙げられます。
※筆者注:
404
ではなくても、410
など 400
番台の HTTP ステータスコードを返せばいい。
存在しない URL にアクセスした場合は、通常であれば 404
が返されますが、ときおり 500
番台のステータスコードを返すサーバーがあります。この場合、Googlebot はサイト内のすべての URLへのクロールを停止します。最悪の場合は、検索結果から完全に消滅します。
※筆者注:
30 日以上 robots.txt
が 500
番台のステータス コードを返す場合、robots.txt
の最後のキャッシュコピーを使用して Googlebot はクロールを実行する。キャッシュコピーを使用できない場合は、Googlebot は、クロールに対する制限はないとみなし全 URL のクロールを試みる。
また、robots.txt
の URL にアクセスした場合に、301
や 302
などで別の URL にリダイレクトしてしまった場合もクロールに問題が発生します。
robots.txt を置く
robots.txt
を置かないのはちょっと不安だというなら、robots.txt
を置く方法もあります。robots.txt
を置く場合には 3 通りのやり方があります。
1. robots.txtに何も書かない
空っぽの robots.txt
をサーバーに置きます。拒否の記述がないので、検索エンジンのクローラはすべてのURLをクロールします。
中身が空っぽの robots.txt
というファイル名のテキストファイルを、サーバーのルートディレクトリ(最上位のフォルダ)にアップロードするだけです。
2.Disallow: だけを記述する
クロールの拒否を指示する Disallow
を記述しますが、URL を指定しません。拒否する URL がないものと検索エンジンは認識するので、すべての URL がクロールの対象になります。
▼記述例Use-Agent: *
Disallow:
Disallow:/
と記述しては絶対にいけません。サイト全体のクロールをブロックする設定になってしまいます。
3.Allow: / だけを記述する
クロールの許可を示す Allow
だけを robots.txt
に記述します。サイト全体のクロールを許可するのでサイトの最上位を表す / を URL として指定します。
▼記述例Use-Agent: *
Allow: /
Allow
は robots.txt
の拡張仕様です。サポートしていないクローラもありますが、Google や Bing など一般的な検索エンジンのクローラはサポートします。
まとめ
この記事では、クロールを拒否する URL がないサイトでの robots.txt
の設定方法について解説しました。
どの方法を用いても違いはありません。
どれがおすすめかと聞かれたとしたら、しいて言えば、空っぽの robots.txt
もしくは Disallow:
だけの robots.txt
を選びます。
今の時点では、ブロック対象の URL がないとしても、いずれ出てくるかもしれません。そのときに、robots.txt
がすでにあれば、それを編集できるため多少の手間が省けるからです。 とは言っても、robots.txt
の作成は時間がかかるものではないので、おすすめというほどのものでもありません。
著者PROFILE
株式会社 Faber Company 取締役 Search Advocate(サーチ・アドボケイト)。「海外SEO情報ブログ」の運営者。正しいSEOをウェブ担当者に習得してもらうことをミッションに掲げている。検索関連のカンファレンス/イベントの取材やセミナーでの講師が Faber Company での主な役割。最近では、海外カンファレンスでの登壇も経験している。海外SEO情報ブログは、日本では、最も有名な SEO をテーマにしたブログの1つ。Google 公式ヘルプコミュニティのプロダクトエキスパートとして認定を受けており、Google 社員とのつながりも深い。