ロボット排除プロトコル(Robots Exclusion Protocol)は、検索エンジンロボットのクロールやインデックスをコントロール可能な標準的仕様のことです。
名称に「排除」とついてはいるものの、検索エンジンにインデックスしてもらうための仕組みもREPにはあります。
例えば「REPタグ(meta要素)」や「XMLサイトマップ」などです。
クローラーへの指示
クローラーへの指示は、robots.txtおよびXMLサイトマップで行えます。
robots.txt
robots.txtとは、検索エンジンに対する命令を記述するためのファイルです。
robots.txtは、必ずルートディレクトリにアップします。ロボットはドメインのルートディレクトリにあるこのファイルのみを確認するので、サブディレクトリにある場合は無効となります。
robots.txtを設置すると、クローラーはこれを読み込んで特定のページを検索対象外とします。具体的には、以下のように記述してアップするだけです。
ただし、GoogleやYahoo!など主要検索エンジンはrobots.txtに対応していますが、中にはその指示に従わないものもありますので、完全に巡回を拒否したい場合は、.htaccess、Basic認証などで対応することが必要です。
内容 | |
---|---|
User-Agent | ルールを適用するロボット、具体的には、Googlebot,Slurp,Baiduspiderなどを指定します。全てのロボットを対象とする場合は、*です。 |
Disallow | ブロックするページやディレクトリ、ファイル形式を指定します。 |
Allow | アクセス許可するページやディレクトリ、ファイル形式を指定しますが、通常は、何も記述しません。 |
Sitemap | XMLサイトマップファイルのURIを指定します。 |
例:
全てのクローラーは、全てのファイルにアクセスしてはいけません。
User-Agent: * Disallow: /
例:
グーグルは、yahooディレクトリにアクセスしてはいけません。
また、ヤフーは、googleディレクトリにアクセスしてはいけません。
User-Agent: Googlebot Disallow: /yahoo/ User-Agent: Slurp Disallow: /google/
XMLサイトマップ
XMLサイトマップ(サイトマップ プロトコル形式)とは、XMLタグで構成された、UTF-8エンコードで作成されたファイルのことです。
テキストエディタなどでも作成できますが、サイトマップの記述ルールやタグを知ってないと作成することが出来ません。また、ページ数が多いと手間がかかるうえ、記述ミスもしてしまいがちです。なのでサイトマップを自動作成してくれるツールを利用すると便利です。
お薦めは、「FC2サイトマップ」です。
XMLサイトマップファイルを作成したら、そのファイルをクロールしてもらう必要があります。robots.txtで指定する方法もありますが、各管理ツールを利用するのが確実です。(※IDの取得が必要です。)
Google ウェブマスター ツール
Yahoo!検索 サイトエクスプローラー
例:
全てのクローラーは、sitemap.xmlをクロールします。
User-Agent: * Sitemap: /sitemap.xml
インデクサへの指示
インデクサへの指示は各リソース(URI)やHTML要素群のようなページの一部に対してのみ有効です。つまりインデクサへの指示は、ページなどと緊密に結びついており、それぞれ特定のリソースの一部です。
REPタグ(meta要素)
REPタグ(meta要素)は、HTMLのhead要素に記述します。
具体的には、以下のようなものがあります。
設定値 | 内容 |
---|---|
index | ページ内を検索対象にし、内容を登録する。 |
noindex | ページ内を検索対象から外し、内容も登録しない。 |
follow | ページ内のリンクを巡回させる。 |
nofollow | ページ内のリンク先を検索対象から外す。 |
noimageindex | ページ内の画像を検索対象から外す。 |
noimageclick | ページ内の画像リンク先を検索対象から外す。 |
noarchive | ページをキャッシュさせないようにする。 |
nosnippet | ページのスニペットを表示しないようにする。 |
NOYDIR | Yahoo!カテゴリ登録サイトのタイトルとスニペットをウェブ検索でも参照表示されることを拒否する。 |
NOODP | DMOZカテゴリ登録サイトのタイトルとスニペットをウェブ検索でも参照表示されることを拒否する。 |
unavailable_after | 指定した期日以降、指定ページを検索結果から削除する。 |
詳しくは、「metaタグについて」をご覧下さい。
REPタグ(X-Robots-Tag)
REPタグ(X-Robots-Tag)は、HTMLに限らずPDFや音声、動画、xlsファイルなどあらゆるウェブオブジェクトのHTTPヘッダーに付加し、インデクサ制御を行うことが可能です。
最も簡単に利用する方法は、.htaccessファイルに設定を以下のように記述することです。
Header set X-Robots-Tag: 設定値
利用できる設定値は、HTMLのmeta要素で利用するものと同じです。
制御ファイルは、以下のものが利用できます。
- Adobe Flash (.swf)
- Adobe Portable Document Format (.pdf)
- Adobe PostScript (.ps)
- Autodesk Design Web Format (.dwf)
- Basic source code (.bas)
- C/C++ source code (.c, .cc, .cpp, .cxx, .h, .hpp)
- Google Earth (.kml, .kmz)
- GPS eXchange Format (.gpx)
- Hancom Hanword (.hwp)
- HTML (.htm, .html)
- Java source code (.java)
- Microsoft Excel (.xls, .xlsx)
- Microsoft PowerPoint (.ppt, .pptx)
- Microsoft Word (.doc, .docx)
- OpenOffice presentations (.odp)
- OpenOffice spreadsheet (.ods)
- OpenOffice text (.odt)
- Perl source code (.pl)
- Python source code (.py)
- Rich Text Format (.rtf, .wri)
- Scalable Vector Graphics (.svg)
- Text (.ans, .asc, .cas, .txt, .text)
- Wireless Markup Language (.wml, .wap)
- XML (.xml)
マイクロフォーマット
マイクロフォーマットの形で与えられるインデクサへの指示は、「rel=”nofollow”」という属性を持つリンクタグで与えられます。つまり、これは、ただのHTMLで、aタグの属性です。
これはブログのコメント欄や、トラックバックスパムを防止するための機能で、一般的にトラックバックやコメントからのリンク属性には「rel=”nofollow”」がついています。
2010/09/03