robots.txt
robots.txt
robots.txtはクローラー(ロボット検索)の巡回方法を指定するためのものです。
ただし、robots.txtを利用するとクローラーとの直接対話が可能になるため、間違いの無い正確な記述が必要です。
なお、robots.txtに記述する内容は、HTMLページ内のmeta要素に記述する事もできます。
robots.txtとは
robots.txt ファイルについて学ぶ
グーグル、新しいrobots.txtテスターを発表
robots.txtの保存場所
robots.txtは必ずトップディレクトリに保存する必要があります。
robots.txt ファイルの保存場所
robots.txtの注意点
robots.txtを利用する際は、エンコードを「UTF-8」にして保存します。
注意点:エンコードは「UTF-8」で保存
robots.txtの基本テクニック
User-agent
robots.txtの最初に対象とするユーザーエージェントを指定します。
主に検索エンジンのクローラーなどを指定しますが、「*」を記述する事で全てのクローラーを対象にする事もできます。
なお、複数のユーザーエージェントを指定する場合は、セット間に改行を入れる必要があります。
User-agent: ユーザーエージェンを指定(全てが対象の場合は「*」)
Noindex(インデックスの禁止)
特定のファイルやディレクトリのインデックスを禁止する方法です。
ここで指定したものは対象の検索エンジンで表示されなくなりますが、変更にはしばらく時間がかかります。
User-agent: ユーザーエージェンを指定
Noindex: ディレクトリやファイルを指定(全てが対象の場合は「/」)
Disallow(アクセスの禁止)
特定のファイルやディレクトリへのアクセスを禁止する方法です。
ここで指定したものは対象のクローラーからアクセスされなくなります。
User-agent: ユーザーエージェンを指定
Disallow: ディレクトリやファイルを指定(全てが対象の場合は「/」)
robots.txtの応用テクニック
sitemap.xmlの自動再送信
robots.txtを利用したsitemapの自動再送信方法です。
以下の内容をrobots.txtに書く事で、検索用のクローラーが巡回時にsitemapを拾って持って行ってくれます。
ただし、クロールする際に必ずsitemap.xmlを取得するわけではないようで、何度かクロールされているうちに取得されるようです。
これは不具合なのか仕様なのかわかりませんが、早期にsitemap.xmlを更新したい場合は手動で更新を行ってください。
注意点:Sitemap行の前は一行空ける
User-agent: *
Disallow:
Sitemap: サイトURL/sitemap.xml
クローラーのアクセス制御とキャッシュ削除
robots.txtに以下のように記述するとクローラーのアクセスを拒否し、キャッシュがある場合は削除されます。
サイトを閉鎖しても検索エンジンのキャッシュデータは残りますが、この方法を使えば時間の経過と共にキャッシュデータも削除させる事ができます。
メタ タグによるサイトへのアクセスのブロック
robots.txt ファイルを使用してページをブロックまたは削除する
User-agent: *
Disallow: /
robots.txtのトラブル対策
robots.txtの動作チェック
Google Search Consoleのrobots.txtテスターを利用すれば、簡単にrobots.txtの動作テストを行う事ができます。
Google Search Console
Google Search Consoleにログイン→対象サイトをクリック→クロール→robots.txtテスター→「robots.txt」でテスト
robots.txtのエラー対策
上述のrobots.txtテスターで確認した際に、記述ミスがないのにエラーが表示される場合は以下のようにする事で修正が可能です。
robots.txtをエディタで開く→エンコードを「Shift-JIS」に変更→行頭の不要部分を削除→エンコードを「UTF-8」で再保存