SEOに関する実験やデータ分析などを公開します

SEOラボ

robots.txtとは?書き方などわかりやすく解説

2018/07/19 2018/07/19

robots.txtとは、Webサイトのファイル(ページやディレクトリ)の内容を認識する「クローラー」の動作をコントロールする際に記述するテキストファイル(.txt)のことを指します。

このrobots.txtでは、主にクローラーの制限を行う際に活用します。
例えば、User-Agentでクローラーの種類を指定して、その指定したクローラーが特定のファイルをクロールしないように、DisallowでファイルのURLパスを指定します。
このように記述したロボッツテキストファイル(robots.txt)をサーバーにアップすることで、指定したクローラーがサイト内の特定ファイルを巡回しないように命令することができます。

このような用途など踏まえて、今回はrobots.txtの書き方など中心に初心者にもわかりやすくポイントをまとめて解説したいと思います。

robots.txtとは?書き方などわかりやすく解説

robots.txtとは

robots.txtとは、クローラーの動作をコントロールする際に記述する テキスファイル(.txt)のこと

robots.txtとは、冒頭でも少し触れましたが、サイトを巡回するクローラーの動作をコントロールするために記述するテキストファイル(.txt)のことです。

主に、クローラーにサイト内のページ(ブログ記事)やディレクトリといったファイルへの巡回を制限する指定を記述するときに robots.txt(ロボッツテキスト) を用いることが多いです。
これは、User-Agentでクローラーの種類を指定し、巡回させたくないファイルをDisallowを用いて記述することで、クローラーの巡回が制限できます。

基本的にはサイト運用の初期段階でクロール制限することはないので、「すべてのクローラーのサイト内巡回を許可する」以下の記述をして、robots.txtをサーバにアップしておくとよいでしょう。

その他、不要な画像やCSS、javascriptファイルへのクロールを制限してリソースを軽減したり、サイトマップの存在を知らせるための記述もできます。

このような用途が基本となりますが、とくにページ数が膨大な大規模サイトではrobots.txtによるクロール制限を「クロール最適化」として活用する手段もあり、SEOにおいても有効です。

SEOにおけるrobots.txtの重要性

重要なページをGoogleに認識させることがSEOにおいて重要

robots.txtは、簡単に言うと、重要なページをうまく認識させるためのハブ役です。
重要なページは、robots.txtを積極的に利用しなくても小規模サイトであれば通常はクロールされます。

しかし、amazonや楽天などのページ数が膨大にある大規模なサイトでは、リンク階層が深い、内部リンクや被リンクが行き届いてないページが多いため、クローラーが効率よくサイト内のWebページを巡回できず、重要なページがクロールされずらいケースが起こりえます。
このような場合に、robots.txtの活用が有効です。
なので、こういった場合に、不要なファイル(ページ/ディレクトリ/css/javascript/画像など)をクロール拒否して、クロールのリソースを重要なページに配分するようにクロールバジェット最適化(クロール最適化)を行う方法があります。

このように重要なページをうまくクロールさせて検索エンジンにインデックスさせることは、SEOにおいても重要となります。

関連記事SEO対策とは?SEOの対策ポイントについて

robots.txtの書き方

robots.txtの基本的な書き方を覚えよう!

robots.txtは、先述した通り、クロール制限やサイトマップの指定を行う際に利用します。
なので、これらの用途がrobots.txtにおける基本的な書き方となるので、しっかり記述方法を抑えておきましょう。

基本形式の記述

サイト運用の初期段階・通常のサイトにおいては、特定のクロールを制御する必要性が低いので、基本的に以下の記述をしておくと良いでしょう。
そして、サイトマップの設置が済んでれば、そのパスを追記しておくとなお良いでしょう。
※参考:robots.txt ファイルを作成する – Search Console ヘルプ

このようにrobots.txtを作成するには、新規テキストファイル(ファイル名は基本的に「robots.txt」)に必要なコードを記述してサーバーにアップします。

その後は、サーチコンソールの「robots.txt テスターツール」を利用して、そこから新しいrobots.txtファイルの作成や既存のrobots.txtファイルの編集を行い運用すると便利です。
※参考:robots.txtの動作確認方法

制御したいクローラーを指定する

Googlebotと呼ばれるメインのクローラー以外にも、クローラーは複数の種類があります。
その中からあらかじめ公式サイトで定義されてるクローラー名を「User-Agent」を使って指定して、クロール制御(制限)の記述を開始する形になります。
※参考:Google クローラ – Search Console ヘルプ

全てのクローラーを指定する場合
Googleのクローラーを指定する場合
Google画像検索のクローラーを指定する場合

サイト運用初期や通常は、すべてのクローラーを対象にすることが多いので、基本的にUser-Agentはワイルドカードの1つとなる「*(アスタリスク)」を指定しておくとよいでしょう。
その他のUser-Agentは、ホームページを運用してる間に必要あれば、利用する形になります。

クロールを制限する

クロールを制限するには、「User-Agent」の記述と共に、「Disallow」を使ってクロール拒否したいページやディレクトリのURLパス(ルートドメインに対する相対URL)を記述する形になります。

ディレクトリの場合
ページの場合
サイト全体の場合

このように、「Disallow」にファイル名を記述して、ページやディレクトリを絞り込むことでクロール制限したいファイルが限定できます。

robots.txtではあくまでもクロールの拒否ということを認識しておきましょう。
ちなみに、検索エンジンからのアクセスを拒否したい場合は、robots.txtと併用して、.htaccessファイルでのパスワード保護やnoindexタグを組み合わせて使う手段があります。

クロールを許可する

クロール拒否の指定ができる「Disallow」と真逆の「Allow」ですが、この記述はわざわざ書かなくてもデフォルトがクロール許可となるので、使う機会が少ないのが現状です。

では、実際にどんなときに使うかというと、すでに「Disallow」を使っていて、特定のページやディレクトリだけクロール許可したい場合にAllowを指定する使い方になります。

特定のページのみ許可する場合

このように、「Allow」にページやディレクトリのURLパスを記述して、特定のファイルへクロールを促すことができます。

サイトマップを知らせる

サイトマップはhtml形式やxml形式が多くありますが、いずれにせよクロールされやすい状況にあるか否かが、この「Sitemap」の記述の使い分けとなります。
なので、例えば、XML形式であればWebページから直接リンクが辿れないので、robots.txtにURLパスを記述しておくと、クローラーが見つけやすくなるので効果的です。
HTML形式(sitemap.html)なら、だいたいTOPページなどの重要なページから直接リンクされてクロールされやすい状態なので、そこまで記述する必要性はないでしょう。

XMLサイトマップの場所をクローラーに知らせる場合

このように、Sitemapにサイトマップのパスを記述することで、クロールを促すことが可能です。
複数ある場合には改行して記述しましょう。

robots.txtの動作確認方法

robots.txtの記述内容が正しいかどうか?動作チェックしよう!

robots.txtを設置しても、記述が正しくないとクローラーの動作をコントロールできません。
そこで、Googleのサーチコンソールに搭載されてる「robots.txtテスター」を使って、公開したrobots.txtの記述が正しいか?うまく動作してるか?内容を以下のような手順で確認することが重要です。

①まず、サーチコンソールにログイン後、左メニューの「クロール」>「robots.txt テスター」をクリックします。

robots.txt テスターについて イメージ①

②すると、ご覧のように現在公開されているrobots.txtが表示されます。(ない場合は「robots.txt が見つかりません(404)」と表示されます。)
ここではURLを入力して「テスト」をクリックすると、robots.txtが正しく動作しているかどうか確認することができます。

robots.txt テスターについて イメージ②

③robots.txtのDisallowページやディレクトリを記述し、プルダウンリストでエージェントを選択後、「テスト」ボタンをクリックします。
すると、以下のように該当コードが赤くハイライトされて、下部に「ブロック済み」と表示されるので、正しくブロックされてることが確認できます。

robots.txt テスターについて イメージ③

このように、robots.txtに記述した内容が正しく動作してるか?確認して、必要に応じて確実にクロール拒否することがサイトのパフォーマンスを管理するうえで重要と言えます。

関連記事サーチコンソール(Search Console)とは~登録・設定・使い方についてまとめ

robots.txtを活用する上での注意点

robots.txtを活用するうえで注意点を念頭に入れておこう

robots.txtを活用する上で、Webサイトへの影響や使い分け、挙動などを理解しておく必要があります。
なので以下のような注意点を念頭に入れた上で、robots.txtをサイト運用に役立てましょう。

  • robots.txtの記述内容が反映されるまでにタイムラグがある。
  • Webページのクロールは拒否するが、ユーザーはそのWebページにアクセスできる。
  • アドレスバーにURLを入力すれば、robots.txtの内容が外部に見られる。(例:http://example.com/robots.txt)
    見られたくない情報があればアクセス制限を欠けて対処しておきましょう。
  • 重複コンテンツの対処法としては不完全なので、適切にな方法で対処する
  • 数千以下のURL数(数千ページ以下)であれば、基本的にrobots.txtでクロール最適化を行う必要性は低い

このような点を意識して効果的にrobots.txtを活用しながら、重要なページをインデックスさせるなど、サイトのパフォーマンス管理に役立てることが大切です。

まとめ

robots.txt を必要に応じて活用し、サイトのパフォーマンスを管理しましょう。

重要なWebコンテンツがGoogleにしっかり認識されるようにリンクやファイルサイズなど最適化しながら、サイトの質を上げるようにSEO対策を進めることが大切です。

関連記事SEO対策とは?SEOの対策ポイントについて

SEOラボのおすすめ記事がLINEに届く!「SEOラボを友だち追加する」

カテゴリから記事を探す

SEO対策無料ご提案はこちら