sitemap.xml」は検索エンジンに効率よくアドレスを収集してもらうのに効果を発揮します。「robots.txt」は、検索エンジンロボットに収集して欲しくないコンテンツが含まれている時に利用する事で、特定のコンテンツをロボットからブロックする事が可能です。今回は、それらについての忘備録としてまとめてみようと思いました。

sitemap.xmlの書式と設置について

  1. sitemap.xmlの書式と設置について
  2. sitemap.xmlを簡単に作成するサービス
  3. sitemap.xmlの送信方法

robots.txtについて

  1. robots.txtについて
  2. robots.txtの書式と設置について

最初に、sitemap.xmlについてです

1. sitemap.xmlの書式と設置について

sitemap.xml」は、拡張子からも分かるように、xmlファイルで作成します。まずは、サンプルコードを以下に示します。

//sitemap.xmlの中身

<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>http://www.example.com/</loc>
<lastmod>2011-01-01T20:15:51+09:00</lastmod>
<changefreq>daily</changefreq>
<priority>1.0</priority>
</url>
<url>
<loc>http://www.example.com/info/</loc>
<lastmod>2011-01-01T19:31:42+09:00</lastmod>
<changefreq>weekly</changefreq>
<priority>0.5</priority>
</url>
</urlset>

上記を見ても分かるように、まずは、xml宣言を記述します。

サイトマップの記述は<urlset>タグと</urlset>タグの間に記述され、<urlset>タグの中には、xmlns属性も記入します。さらに、<url>タグと</url>タグの間に1ページ分の情報を記述します。それでは、<url>タグと</url>タグの間について1行ずつ見ていきましょう。

1-1. <loc>タグ

ここには、インデックスする1ページ分の「アドレス」を以下のように記入します。

<loc>http://www.example.com</loc>

1-2. <lastmod>タグ

ここには、以下のように最終更新日時を記入します。

<lastmod>2011-01-01T20:15:51+09:00</lastmod>
但し、<lastmod>2011-01-01</lastmod>のように時間を省略する事も可能です。

1-3. <changefreq>タグ

ここには、以下のように更新頻度を記入します。

<changefreq>daily</changefreq>
上記は、「daily」ですので、「1日に1回更新します」の意味です。更新頻度は、「always」「hourly」「daily」「weekly」「monthly」「yearly」「never」などのように記入します。

1-4. <priority>タグ

ここには、以下のように優先度を記入します。

<priority>1.0</priority>
優先度は、0.0~1.0の間で記入します。ここに記入する優先度は、あくまでも自サイト内でのものになるので、全てを1.0にすればいいというものではありません。指定をしない場合は、デフォルトの0.5になります。

最後に、設置についてですが、トップページの「index.html」ファイル等が置いてあるディレクトリと同じディレクトリに設置します。

2. sitemap.xmlを簡単に作成するサービス

さて、これまで「sitemap.xml」の書式について書きましたが、サイトのページ数が膨大になるほど手書きで書いていくのは大変な作業になります。そんな時に、「sitemap.xml」を簡単に作成できるサービスがいくつかありますので、ここでご紹介したいと思います。

2-1. SEO対策用サイトマップの作成ツール | Sitemap 0.9 対応!

2-2. Google・Yahoo! XMLサイトマップ作成ツール サイトマップジェネレーター ver.β | SEOもっと!

2-3. サイトマップを作成-自動生成ツール「sitemap.xml Editor」

2-4. SEO対策ツール FC2サイトマップ

2-5.サイトマップを作成 – The Search ツール

3. sitemap.xmlの送信方法

3-1. 各検索エンジンのサイト管理ツールを利用します。

ここでは、「google」と「Bing」のみご紹介します。以前は、「Yahoo!Japan」にも「サイトエクスプローラー」なるサービスがありましたが、現在は「google」のエンジンを採用しているので、それに伴い終了しております。まず、「google」は「Googleウェブマスターツール」を、Bingは「Bingウェブマスターツール」を利用します。 両方とも、それぞれ「Googleアカウント」、「Bingアカウント」の取得が必要です。勿論、無料で取得できます。

3-2.二つ目の方法は、「robots.txt」ファイルにサイトマップのアドレスを記述します。

記入の方法は、「robots.txt」ファイルに、

Sitemap:http://example.com/sitemap.xml

のように記入します。

そして、「robots.txt」は、トップページの「index.html」ファイル等があるディレクトリと同じトップディレクトリにアップロードします。

4. robots.txt について

検索エンジンロボットは、まず「robots.txt」が存在するかを確認します。「robots.txt」があれば、ロボットはこれを参考にサイト内をクロールします。

検索に収集されたくないコンテンツがある場合に、「robots.txt」にその旨の記述をしておくことで、ロボットをブロックする事が可能です。全てのコンテンツを収集して欲しい場合には、「robots.txt」を作成する必要はありません。

ただ、ここにサイトマップのアドレスを記入しておくことで、ロボットをサイトマップに円滑に誘導し、サイト内をスムーズにクロールさせる事も可能になるので、サイトマップのアドレスを記入する目的だけで「robots.txt」を作成するだけでも非常に意味があると思います。

5. robots.txt の書式と設置について

上記でも触れたように、「robots.txt」には「sitemap.xml」のアドレスを記入することができます。
その際の書式は、以下のとおりです。

Sitemap:サイトマップの絶対パス

Sitemap:http://example.com/sitemap.xml

のように記入します。

さて、次に特定のコンテンツに対してアクセス制限をかけたい時の記入方法です。

User-Agent:対象となるロボット
Disallow:制限するページ、ディレクトリまたはファイルの種類等

基本的に上記の2つの項目を記入していきます。

例えば、全てのロボットに全てのページのアクセス制限をかける記入は、

User-Agent: *
Disallow: /

「*(アスタリスク)」は「全て」の意味で、「全てのロボットに対して」の命令になります。
「/」だけを記入すると、全てのディレクトリという意味になります。

次に、「google」のロボットに対して、「/info/」というディレクトリへのアクセスを制限する記入は、

User-Agent: Googlebot
Disallow: /info/

になります。

それに加えて、「.js」ファイルを拒否したいときは、「Disallow:」を二行続けて書けばいいだけです。

User-Agent: Googlebot
Disallow: /info/
Disallow: /*.js$
上記でOKです。

ここからは、User-Agent:への各ロボットの記入例とDisallow:への記入例を以下に挙げていきたいと思います。

User-Agent:の記入例
*(アスタリスク)… 全てのロボット
Googlebot … Googleクローラー
Googlebot-Image … Google画像検索
Googlebot-Mobile … Googleモバイル検索
msnbot … Bingクローラー
Baiduspider … Baidu(百度)クローラー

Disallow:の記入例
/company/top.html … /company/top.htmlを拒否
/info/ … /infoのディレクトリ以下のファイルを全て拒否
/*.gif$ … 全てのgifファイルを拒否

のように記入します。

最後に、あるサイトの「robots.txt」の記入例です。

User-agent: Googlebot
Disallow: /*.js$
Disallow: /info/

User-agent: Googlebot-Image
Disallow: /*.jpg$
Disallow: /*.gif$
Disallow: /*.png$

User-agent: *
Disallow:

Sitemap:http://example.com/sitemap.xml

今回は「sitemap.xml」「robots.txt」の書き方と設置について最低限の事項に絞り、簡単にまとめてみました。ここまで読んで頂き、有難うございました。