【SEO】クローラーの拒否設定ができるrobots.txtとは?作成方法と書き方
- 作成日:2018/09/30
サイト運営をしているとrobots.txtという単語を聞くことがあると思います。 これについて、基本的なことをわかりやすく解説します。
robots.txtとは
robots.txtとはクローラーに対しアクセス制御の指示をだすファイルです。 よく使われるのはクローラーのアクセスを拒否するときです。
何らかの理由で特定のページを検索結果に表示させたくない場合、 クローラーに対してそのページをインデックスさせないように指示をださなければなりません。
その指示をrobots.txtに記述することで、クローラーはそのページをインデックスしなくなり、 結果的に検索結果からも除外されます。
フォルダ単位でアクセス制御することも可能なので、 あるフォルダ直下のページ全てをアクセス拒否設定にして、 検索結果に表示されないように指示をだすことも可能です。
クローラーに対してのアクセス制御なので、ユーザは普通にアクセスできます。
また、既にインデックス登録されたページに対して設定しても有効となり、設定後しばらくすると検索結果画面に表示されなくなります。
作成方法
ファイルの拡張子が「.txt」とあるように、ただのテキストファイルです。 ゆえに、テキストエディタ(メモ帳でも可)で新規作成をしましょう。
作成したrobots.txtは一番上のディレクトリであるルートディレクトリにアップロードして置きます。 サイトトップページのindex.htmlやsitemapなどがあるフォルダと同じところですね。
書き方
使い道が多いであろうアクセス拒否の基本的な書き方をご紹介します。
User-agent: クローラー名
Disallow: アクセス拒否をしたいパス
User-agentはクローラー名を設定します。 クローラーはGoogleやYahooなど色々なものがあります。 クローラーを指定してアクセス制御する場合はともかく、 大抵は全部のクローラーに指示をだすアスタリスク(*)でOKです。
次行のDisallowはクローラーのアクセスを拒否する時に使うものです。 「:」の後にアクセスを拒否するページのパスを記載します。 実際に書くと以下のようになります。
User-agent: *
Disallow: /test/abc.html
これはtestフォルダ直下のabc.htmlのアクセスを拒否しています。 パスの表記がこれだけではわかりにくいので、詳しく解説します。
パスはルートディレクトリから書く
アクセス拒否ページのパスの書き方ですが、これは一番上の階層にあるルートディレクトリから書きます。 ちなみに、最初のスラッシュ(/)がルートディレクトリを意味します。
例えば、今皆さんが見ているこのページをアクセス拒否にしてみます。URLは以下となっていますね。
ルートディレクトリである赤字の箇所をrobots.txtでは/のみで表します。 よって、以下のように記述すればこのページはアクセス拒否対象になります。
User-agent: *
Disallow: /website/seo/robots-basic.html
フォルダ単位でアクセス拒否をする
今までは1ページ単位でアクセス拒否をしていましたが、フォルダ単位でもできます。
User-agent: *
Disallow: /website/seo/
このように末尾を「/」で終えれば、フォルダ単位のアクセス制御となります。 これは「seoフォルダ」内にある全ページのアクセスを拒否している例です。
アクセスを許可する
アクセスを許可する場合は「Allow」を使うのですが、わざわざアクセス許可の指示をださなくても、 クローラーは全てのページにアクセスしようとします。よって、基本的にはアクセス許可の指示は不要です。
使う場面があるとすれば、あるフォルダはアクセス拒否だけど、その中の特定のページだけはアクセス許可にしたいといった場合です。 そのような場合は以下のように書きます。
User-agent: *
Disallow: /website/seo/
Allow: /website/seo/robots-basic.html
一旦「seoフォルダ」にある全ページのアクセスを拒否して、その後にrobots-basic.htmlだけを許可している例ですね。