Robots.txt およびサイト マップの管理

公開日: 2009 年 6 月 3 日 (作業者: ruslany (英語)

更新日: 2009 年 9 月 24 日 (作業者: ruslany (英語))

IIS Search Engine Optimization Toolkit には、Web サイト用の robots.txt ファイルの内容を管理するための Robots Exclusion 機能と、サイトのサイト マップを管理するための Sitemaps and Sitemap Indexes 機能が用意されています。このチュートリアルでは、これらの機能の使用方法とその用途について説明します。

背景

検索エンジン クローラーが 1 つの Web サイトに対して消費できる時間とリソースは限られています。したがって、以下の対応を行うことが重要です。

  1. 重要ではないページや検索結果ページに表示されるべきではないページのインデックスをクローラーが作成しないようにします。
  2. インデックス作成対象として最も重要なコンテンツにクローラーがアクセスするようにします。

こうした対応を行うためのプロトコルとして、ロボット排除プロトコル(英語)サイトマップ プロトコル(英語)の 2 つがあります。

ロボット排除プロトコルは、検索エンジン クローラーが Web サイトのクロール時に "要求してはならない" URL を指定するために使用します。排除に関する指示は、Web サイトのルートに置く robots.txt という名前のファイルに含めます。検索エンジン クローラーの多くはこのファイルを探して、その指示に従います。

サイトマップ プロトコルは、Web サイトのクロールしてもよい URL を検索エンジン クローラーに知らせるために使用します。また、サイト マップは、URL に関するメタデータ (最終更新日時、更新頻度、相対優先度など) の提供に使用します。検索エンジンが Web サイトのインデックス作成の際にこれらのメタデータを使用する場合があります。

必要条件

1. Web サイトまたは Web アプリケーションのセットアップ

このチュートリアルを完了するには、IIS 7 でホストされた Web サイトまたは Web アプリケーションが必要です。どちらもない場合は、「Microsoft Web アプリケーション ギャラリー」からすぐにダウンロードして入手できます。このチュートリアルでは、人気のあるブログ アプリケーション DasBlog を使用しています。

2. Web サイトの分析

Web サイトまたは Web アプリケーションが準備できたら、代表的な検索エンジンがサイトのコンテンツをクロールする方法を理解するために分析を行います。分析を行うには、記事「Site Analysis を使用した Web サイトのクロール」および「Site Analysis のレポートの使用」に示されている手順に従います。分析によって、検索エンジンによるクロールの対象である URL の中に、クロールやインデックス作成を行うメリットがない URL があることがわかります。たとえば、ログイン ページやリソース ページに検索エンジン クローラーがアクセスする必要はありません。これらの URL を robots.txt ファイルに追加し、検索エンジンによって表示されないようにします。

robots.txt ファイルの管理

Robots Exclusion 機能は、robots.txt ファイルの作成に使用します。robots.txt ファイルを使って、Web サイト内のクロールおよびインデックス作成が不要な箇所を検索エンジンに指示します。以下に、このツールの使用方法の手順を説明します。

  1. [スタート] メニューに「INETMGR」と入力して、IIS 管理コンソールを開きます。

  2. 左側のツリー ビューを使用して Web サイト (Default Web Seite など) に移動します。

  3. [管理] セクションの [検索エンジンの最適化] アイコンをクリックします。

    Ff454149.637_SEO_mgmticon(ja-jp,TechNet.10).png

  4. SEO のメイン ページで、[ロボット排除] セクションの [新しい Disallow ルールの追加] タスク リンクをクリックします。

    Ff454149.637_SEO_homepage(ja-jp,TechNet.10).png

Disallow ルールおよび Allow ルールの追加

[Disallow ルールの追加] ダイアログが自動的に開かれます。

Ff454149.637_IISSEO54(ja-jp,TechNet.10).png

ロボット排除プロトコルは、"Allow" ディレクティブおよび "Disallow" ディレクティブを使用して、クロール対象の URL とクロール対象ではない URL を検索エンジンに伝えます。これらのディレクティブは、すべての検索エンジンに対して指定したり、user-agent HTTP ヘッダーから識別した特定のユーザー エージェントに対して指定したりできます。[Disallow ルールの追加] ダイアログの [ロボット (ユーザー エージェント)] フィールドにクローラーのユーザー エージェント情報を入力して、ディレクティブを適用する検索エンジン クローラーを指定できます。

[URL パス] ツリー ビューを使用して、アクセスを拒否する URL を選択します。URL パスを選択する際に、[URL 構造] ドロップ ダウン リストからさまざまなオプションを選択できます。

  • [物理的な場所] - Web サイトの物理ファイル システム レイアウトからパスを選択できます。
  • [サイト分析から (<分析名>)] - Site Analysis ツールによるサイト分析によって判明した仮想 URL 構造からパスを選択できます。
  • [<新しいサイト分析を実行>] - 新たにサイト分析を実行して、Web サイトの仮想 URL 構造を取得し、URL パスを選択できます。

「必要条件」セクションで説明した手順を完了している場合は、すぐにサイト分析を使用できます。ドロップ ダウン リストから分析を選択し、[URL パス] ツリー ビューで、検索エンジンによって表示されないようにしたい URL のチェック ボックスをオンにします。

Ff454149.637_IISSEO55(ja-jp,TechNet.10).png

アクセスを拒否したいディレクトリやファイルをすべて選択したら、[OK] をクリックします。メインの [機能ビュー] にアクセスを拒否するディレクトリやファイルが表示されます。

Ff454149.637_IISSEO56(ja-jp,TechNet.10).png

また、サイトの robots.txt ファイルも更新されます (存在しない場合は新たに作成されます)。その内容は次のようになります。

User-agent: *
Disallow: /EditConfig.aspx
Disallow: /EditService.asmx/
Disallow: /images/
Disallow: /Login.aspx
Disallow: /scripts/
Disallow: /SyndicationService.asmx/

robots.txt の動作を検証するには、Site Analysis 機能に戻ってサイトの分析を再実行します。レポートの概要ページで、[リンク] カテゴリをクリックし、[robots.txt でブロックされているリンク] レポートをクリックします。このレポートには、先ほど作成した robots.txt ファイルでアクセスを拒否したため、クロールされなかったリンクがすべて表示されます。

Ff454149.637_SEO_linksanalysis(ja-jp,TechNet.10).png

サイト マップ ファイルの管理

Sitemaps and Sitemap Indexes 機能は、Web サイトのサイト マップを作成し、クロールおよびインデックス作成の対象ページを検索エンジンに伝えるために使用します。以下に、このツールの使用方法の手順を説明します。

  1. [スタート] メニューに「INETMGR」と入力して、IIS 管理コンソールを開きます。

  2. 左側のツリー ビューを使用して Web サイトに移動します。

  3. [管理] セクションの [検索エンジンの最適化] アイコンをクリックします。

    Ff454149.637_SEO_mgmticon1(ja-jp,TechNet.10).png

  4. SEO のメイン ページで、[Sitemaps and Sitemap Indexes] セクションの [新しいサイトマップを作成] タスク リンクをクリックします。

    Ff454149.637_SEO_homepage2(ja-jp,TechNet.10).png

  5. [新しいサイトマップ] ダイアログが自動的に開きます。

    Ff454149.637_IISSEO59(ja-jp,TechNet.10).png

  6. [サイトマップ] ページで、[URL の追加] をクリックします。

サイト マップへの URL の追加

[URL の追加] ダイアログは次のように表示されます。

Ff454149.637_IISSEO510(ja-jp,TechNet.10).png

サイト マップ ファイルは、基本的に、URL とメタデータ (更新頻度、最終更新日時、相対優先度など) を羅列した単純な XML ファイルです。[URL の追加] ダイアログを使用して、新しい URL をサイト マップ XML ファイルに追加します。サイト マップ内の各 URL は、完全修飾 URL 形式 (プロトコル接頭辞やドメイン名などが含まれていることが必須) でなければなりません。したがって、まず最初に、サイト マップに追加する URL にどのドメインを使用するのかを指定する必要があります。

[URL パス] ツリー ビューを使用して、サイト マップに追加する URL を選択します。[URL 構造] ドロップ ダウン リストからオプションを選択できます。

  • [物理的な場所] - Web サイトの物理ファイル システム レイアウトから URL を選択できます。
  • [サイト分析から (<分析名>)] - Site Analysis ツールによるサイト分析によって判明した仮想 URL 構造からパスを選択できます。
  • [<新しいサイト分析を実行>] - 新たにサイト分析を実行して、Web サイトの仮想 URL 構造を取得し、URL パスを選択できます。

「必要条件」セクションで説明した手順を完了している場合は、すぐにサイト分析を使用できます。ドロップ ダウン リストから分析を選択し、サイト マップに追加したい URL のチェックボックスをオンにします。

必要に応じて、[更新頻度]、[最終変更日時]、[優先度] オプションを変更し、[OK] をクリックして URL をサイト マップに追加します。sitemap.xml ファイルが更新されます (存在しない場合は新たに作成されます)。以下のような内容になります。

<urlset>
  <url>
    <loc>http://myblog/2009/03/11/CongratulationsYouveInstalledDasBlogWithWebDeploy.aspx</loc>
    <lastmod>2009-06-03T16:05:02</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.5</priority>
  </url>
  <url>
    <loc>http://myblog/2009/06/02/ASPNETAndURLRewriting.aspx</loc>
    <lastmod>2009-06-03T16:05:01</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.5</priority>
  </url>
</urlset>

robots.txt へのサイト マップの場所の追加

サイト マップの作成が完了したので、検索エンジンにサイト マップの場所を通知してすぐに使用できるようにします。サイト マップの場所の URL を robots.txt ファイルに追加するのが最も簡単です。

Sitemaps and Sitemap Indexes の [機能ビュー] で、先ほど作成したサイト マップを選択し、[Robots.txt に追加] をクリックします。

Ff454149.637_IISSEO511(ja-jp,TechNet.10).png

次のような内容の robots.txt ファイルが作成されます。

User-agent: *
Disallow: /EditService.asmx/
Disallow: /images/
Disallow: /scripts/
Disallow: /SyndicationService.asmx/
Disallow: /EditConfig.aspx
Disallow: /Login.aspx

Sitemap: http://myblog/sitemap.xml

検索エンジンへのサイト マップの登録

サイト マップの場所を robots.txt ファイルに追加することに加え、サイト マップがある場所の URL を主要な検索エンジンに登録することをお勧めします。こうすることで、検索エンジンの Web 管理者用ツールから Web サイトのステータスや統計といった有用な情報を取得できます。

まとめ

このチュートリアルでは、IIS Search Engine Optimization Toolkit の Robots Exclusion 機能および Sitemaps and Sitemap Indexes 機能を使用して Web サイトの robots.txt および サイト マップ ファイルを管理する方法について説明しました。IIS Search Engine Optimization Toolkit に用意されている統合ツール セットを使用すれば、検索エンジン向けに robots.txt ファイルやサイト マップを準備したり、その正確性を検証することができます。