noteで書くこの記事はもともとSEOmozのYOUmozセクションに掲載したものですが、非常に優れているのでこちらのブログに格上げしました。Protocol)というのは、検索ロボットの行動や検索エンジンのクロールやインデックス化を制御する標準的な手続きの総称だ。名前に「排除」とついてはいるものの、検索インデックスに登録してもらうための仕組みもREPにはある。REPを構成するのは次のものだ。1994年に生まれたREPの原型は、robots.txtで使用するクローラへの指示を定義したもので、1997年に拡張された。一部の検索エンジンでは、ワイルドカードを用いたURIパターンのような拡張にも対応している。1996年の拡張では、メタタグ(meta要素)を用いたロボット制御で使用するインデクサへの指示(REPタグ)が定義された。検索エンジンでは、HTTPヘッダーX-Robots-Tagを用いたロボット制御にも対応しており、PDF形式のドキュメントや画像など、HTML以外のリソースでも、HTTPヘッダーでREPを適用できるようになった。HTTPヘッダーHTTPヘッダーとは、ウェブサーバーがウェブブラウザなどのクライアントに対してデータを送る前に送信する情報のことで、通常はブラウザには表示されない。多くの場合、HTTPレスポンスコード、コンテンツの種類(HTMLなのかPDFなのかなど)、コンテンツのサイズ、最終更新日付などの情報が含まれている。HTTPヘッダーの内容は基本的にHTMLページの記述などでは変更できず、サーバーの設定や出力プログラムの設定によって変更できる。http-equivの情報を解釈する。2005年に登場したサイトマッププロトコルでは、(XML)サイトマップを通じて大量のコンテンツを検索エンジンに登録する手続きが定義されている。2005年には「rel="nofollow"」というマイクロフォーマットも加わった。これはリンクタグ(a要素)のrel属性に「nofollow」という値を指定した場合、検索エンジンはそのリンク先をクロールしないというもので、「リンクコンドーム」とも呼ばれる。重要なのは、「クローラへの指示」と「インデクサへの指示」との違いを理解しておくことだ。クローラはコンテンツのインデックス化どころか、評価も行わない。クローラの役目はウェブサーバーからファイルやスクリプトの出力を取り出し、データプールに蓄えることだ。インデクサは、クローラが取得してきたデータを使用して検索インデックスを作成する。クローラへの指示(robots.txtおよびサイトマップ)は、クロールすべきサイトと、してはいけないサイトをクローラに指示するものだ。この指示は、すべての大手検索エンジンに対して有効だが、検索エンジンによって解釈が微妙に異なっており、独自の文法をサポートしている場合もある。クローラへの指示を与えることで、通常ならクローラが情報収集できないコンテンツでもインデックス化させ、検索結果に表示させることが可能になる。この場合、コンテンツのタイトルや説明には他サイトの参照から拾い出したものを用いることが多い。インデクサに対する指示(REPタグ、マイクロフォーマット)を与えるためには、まずクロールしてもらうことが必要だ。残念なことに、(今の時点では)インデクサに対するサイトレベルの指示というものは存在しない。検索エンジンがインデクサに対する指示に従うためには、その指示を記述したリソースがクロール可能でなければならいということだ。一度に複数のURIに関する指示を記述できるrobots.txtとは異なり、インデクサへの指示は各リソース(URI)やHTML要素群のようなページの一部に対してのみ有効だ。インデクサへの指示は、いずれもページやその他のウェブオブジェクトと緊密に結びついており、それぞれ特定のリソース(HTML要素など)の一部ということだ。検索エンジンのクロール、インデックス化、評価に対応するREPの指示は、それぞれ異なったレベルで定義されているため、検索エンジンは一種のコマンド階層をたどっていく必要がある。sebastians-pamphlets.comrobots.txtウェブサーバーのルートディレクトリに置かれ、サイト全体の門番的役割を果たす。言い換えれば、ページのメタタグなどでクロールを許可していても、robots.txtでクロールを禁止しているならば、そのページがクロールされることはない。通常、検索エンジンは1日に1回robots.txtを読み出し、その内容をキャッシュする。robots.txtの内容を変更したとしても、それがすぐクローラの行動に反映されるわけではない。サイトマップを登録すると、robots.txtのキャッシュがクリアされてしまうことがある。その場合、検索エンジンは最新のrobots.txtを読み出さなくてはならない。(XML)サイトマップサイトマップは機械的に処理できるURL登録リストで、XMLやプレーンテキストなどさまざまな形式がある。XMLサイトマップを利用すると、URLごとに異なる指示をクローラに与えたり、サイト内におけるURLの優先度やファイルの最終更新日といった詳細な指示をクローラに与えることが可能だ。XML形式の動画サイトマップを使えば、動画のタイトル、長さ、説明といったメタデータを検索エンジンに与えることができる。サイトマップで登録しても、robots.txtによってアクセスが規制されている場合、検索エンジンはそのリソースをクロールしない。REPタグREPタグ(メタタグ(meta要素)による「noindex」「nofollow」「unavailable_after」)はURIレベルで作用し、インデクサに作業の指示を出す。検索クエリの実行に関する指示を検索エンジンに与えるREPタグ(「nosnippet」「noarchive」「noodp」)もある。クローラに対する指示の場合とは異なり、REPタグの解釈は検索エンジンによって異なる。content="noindex">というタグがあった場合、Googleの検索結果表示ページ(SERP)には、そのURLやODPの参照すら表示されないが、Yahoo!やMSNでは、インデックス化が禁止されているURLに対する外部からのリンクがSERP上に表示される場合がある。REPタグはXML/HTMLドキュメント内のメタタグだけでなく、X-Robots-Tagを使ってあらゆるウェブオブジェクトのHTTPヘッダーに付加できるため、メタタグで記述した指示と矛盾する場合、HTTPヘッダーのX-Robots-Tagsの内容を優先するというのが共通認識だ。マイクロフォーマットマイクロフォーマットの形で与えられるインデクサへの指示は、各HTML要素に対するページ単位の定義より優先される。あるページのX-Robots-Tagで「follow」という指示がある場合(「nofollow」という値はない)でも、そのページ内に「rel="nofollow"」という属性を持つリンクタグがあれば、そちらに軍配が上がる。robots.txtでインデクサへの指示を出すことはできないが、要求されたリソースにX-Robots-Tagを付加するサイトレベルのサーバーサイドスクリプトを作れば、複数のURIにまとめてインデクサへの指示を設定することは可能だ。この手法には、プログラム作成スキルに加え、ウェブサーバーとHTTPプロトコルに関する十分な知識が必要だ。詳しい情報、記述法の説明、サンプルコード、ヒント、コツなどなど、知りたい方は下記リンクを参照してほしい。掲載された以下の記事を日本語訳したものです。最近(過去90日間)の記事で、Facebookの「いいね!」が多かった記事をお見逃し無く。ネット広告への強い嫌悪感、テレビや新聞の倍以上に。いいね!私は変人コレクター。CEM」の提供を開始LINEのマーケ活用術――ナーチャリングからリピーター醸成まで解説するセミナー2/20開催MaaSが普及したら「自家用車を手放すことを検討する」48%【アクセンチュア調べ】2019年にもっとも注視されたテレビCMは、クボタ「壁がある。2/19(水)@ステーションコンファレンス東京リピーターを呼び込む「究極の集客方法」。リピーターを呼び込む「究極の集客方法」。2019年12月すべて見るインフォメーションWeb担のメルマガを購読しませんか?Web担の記事がコンパクトに毎週届くメールマガジン「Web担ウィークリー」は、10万人が読んでいる人気メルマガ。忙しいあなたの情報収集力をアップさせる強い味方で、お得な情報もいち早く入手できます。編集後記サイトマップFAQ(よくある質問とその答)Web担に広告を掲載しませんか?購読者数10万人のメールマガジン広告をはじめとする広告サービスで、御社の認知向上やセミナー集客を強力にお手伝いいたします。