このページは自宅サーバーコンテンの運用でGoogleサイトマップを活用するための方法の解説です。
お便利サーバー.com+相互リンクサイト内をキーワードで検索
Googleを味方にする方法

Googleを味方にする方法

Googleサイトマップを極める1

Googleサイトマップを極める2

Googleサイトマップを極める3

Googleサイトマップを極める4

Googleサイトマップを極める5

Google検索窓を利用する

AdSenceとAnalytics


サイトマップの作成方法について一般的なこと

ここからがこのセクションの本番で、こちらからGoogleに送りつけるコンテンツのページリスト(これをGoogleサイトマップと呼びます)を作成します。

Googleではサイトマップとしていくつかの形式をサポートしています。

もしも根気と暇のある方でしたら、自分でコンテンツのURLリストを手作業で作成しても構いません。

が、ページ数が少なくてしかも滅多にページが増えないような「超小型固定的」なコンテンツならばともかく、それなりのページ数があってなおかつ動的なページを生成するようなコンテンツを運用しているのであれば、何らかの方法で自動的にサイトマップを作成し、定期的にGoogleに送信するようにしたいものです。

ここは素直にGoogleがリリースしている専用のサイトマップ作成ツールを利用することにします。

サイトマップ作成ツールのダウンロード

サイトマップ作成ツールを利用したサイトマップの作成方法は、 Google ウェブマスター ツール に詳しい解説があります。

サイトマップ作成ツールはうえのリンクを開き、ページの中から「1. サイトマップ生成ツールのプログラム ファイルをダウンロードする」の中のリンクをクリックし、 SourceForge.net のダウンロードページから入手することができるようになっています。

このツールは一度Windows上で展開して設定を行ったほうがよいので、ここではWindowsが標準で扱えるzip形式の"sitemap_gen-*.*.zip"をダウンロードしておくと良いでしょう。

このページの先頭へ↑

サイトマップ作成用初期設定ファイルの作成

Googleに送るサイトマップを作成するときに注意したいのは「できるだけ不必要な要素をリストに含めない」ということです。

例えばボタンや矢印などのアイコンファイルや、管理用のテキストファイル、外部スタイルシートやジャバスクリプトファイルなどは検索エンジンに登録しても仕方ありませんし、ホームページとして参照される必要のないWebメールの画面や、他人に公開したくないアクセス解析のページなどは検索エンジンに登録すること自体を避けたいところです。

不要なファイルまでリストに含めて送信してしまうと「優先して検索エンジンに登録してほしい」と思うファイルの「Google検索エンジンにおける扱いの重要性」が低くなってしまうことも考えられますし、また"robots.txt"などで明示的に検索エンジンのクロールを禁止しているファイルまでリストに入れてしまうとクロール時に大量のエラーが発生しますからクロールの効率そのものが落ちてしまうことも考えられます。

サイト上のどういうファイルをリストアップし、どういうファイルをリストから除外するかは、これから説明するXMLファイルの中で設定していきます。

さて、サイトマップツールのアーカイブをパソコン上の適当な場所にダウンロードして解凍すると、こんな中身になっているはずです。

Googleサイトマップ作成ツールの中身
Googleサイトマップ作成ツールの中身

この中の"example_config.xml"というのがその設定ファイルのサンプルですので、まずこれを適当な名前に変更します。もちろんオリジナルのサンプルファイルを残しておきたければ別名でコピーを作成しても構いません。ここでは"obenri_config.xml"という名前でコピーを作成するものとします。

設定ファイルの準備ができたら、これを適当なテキストエディタで開きます。

設定ファイルの中身
設定ファイルの中身

全部英文なので「クラッ」とくる方もいるかもしれませんが、実はそれほど難しくはありませんので安心してください。

以下、このファイルの中のポイント毎に設定を加えていきます。

"site"の設定

"<site " で始まるパラメータです。リストに出力する各要素のベースになるURLと、サイトマップを保存する場所とファイル名を設定します。

例えばお便利サーバー.comの場合、URLは"http://www.obenri.com/、ドキュメントルートは"/var/www/html"なので、

<site base_url="http://www.obenri.com/" store_into="/var/www/html/sitemap.xml.gz" verbose="1" >

と設定しています。サイトマップ名は"*.xml"または"*.xml.gz"ならばなんでも構いませんが、"*.xml.gz"にすると圧縮形式とみなされるため、Googleに送信するリストのファイルサイズが小さくて済みます。

"url""urllist"の設定

"<url " 、および "<urllist " で始まるパラメータです。

通常は使わなくてもいいでしょう。その記述範囲を "<!--" から "-->" で挟んで無効化してください。

"directory"の設定

"<directory " で始まるパラメータです。リストに出力したいファイルが置いてあるディレクトリを指定します。

一般的にはドキュメントルートとそのドキュメントルートに対応するURL、Apacheで省略可能に設定している(DirectoryIndexディレクティブ)ファイル名を設定すればOKです。

例えばお便利サーバー.comの場合、

<directory path="/var/www/html" url="http://www.obenri.com/" default_file="index.html" / >

と設定しています。

"accesslog"の設定

"<accesslog " で始まるパラメータです。Apacheのアクセスログを調べてリストに追加します。

サイトがすべて固定的なHTMLで構成されているコンテンツの場合はあまり意味がありませんが、CGIやPHPなどで動的なページを生成するサイト(ブログや通販なんかでCMSを使っている場合は大抵そうですよね)の場合は、この設定はとても重要になります。

CGIやPHPで動的に生成されるページはサーバー上には具体的なファイルとして存在しないので、ドキュメントルートからリストを作成しても含まれることはありません。

しかし一度生成したページの情報はログファイルにきちんと残りますから、このパラメータを用いることで「誰かが利用して出力された動的なページ」をリストに含めることができるようになります。

例えばお便利サーバー.comの場合、"namazu"によるサイト内検索でCGIを利用していますから設定は必須になります。

<accesslog path="/etc/httpd/logs/access_www.obenri_log" encoding="UTF-8" />

<accesslog path="/etc/httpd/logs/access_www.obenri_log.1" encoding="UTF-8" />

このように、現在書き込み使用されているログファイル"access_www.obenri_log"と、最も新しい過去のログファイル"access_www.obenri_log.1"を利用するように設定しています。

ここで現在書き込み中のログファイル"access_www.obenri_log"だけにリスト化を限定してしまうと、"access_www.obenri_log"はローテーションが行われた直後には中身がほとんど空っぽになってしまうため、サイトマップを作成するタイミングによっては「動的ページが全く含まれない」サイトマップが生成されてしまう恐れがあります。そこでひとつ前の"access_www.obenri_log.1"までリストに含めるようにしています。

もちろんサーバー上に残っているすべてのログファイルまでリスト化に含めても良いのですが、このリスト化処理は結構サーバーの負担が大きいので「一つ前のログファイル」までに解析対象を留めているわけです。

結構読みが深いでしょ?。

"sitemap"の設定

"<sitemap " で始まるパラメータです。「常にリストとして加えたい」固定的なサイトマップを作成しておき、出力するサイトマップに含めるときに使うパラメータです。

ベースのページ構成が固定的で、それとは別に大量の動的ページを生成するようなコンテンツの場合に使うと良いかもしれないパラメータです。

お便利サーバー.comではあまり意味がなさそうなので、記述の上下を "<!--" から "-->" で挟んで無効化しています。

"filter"の設定

"<filter " で始まるパラメータです。通常は特定のファイルやディレクトリ以下をサイトマップから除外したいときに利用します。

デフォルトの二つのパラメータ、

<filter action="drop" type="wildcard" pattern="*~" />

<filter action="drop" type="regexp" pattern="/\.[^/]*" />

は、一行目がEmaxやgeditなどのエディタのバックアップファイル、二行目が".(ドット)"で始まるファイルをリストから除外する設定です。一行目はともかく、Linuxでは二行目は必ず有効にしておく必要があります。

例えばお便利サーバー.comではこのほかに、

<filter action="drop" type="wildcard" pattern="*/_subitem_dir/*" />
...説明のためのサブウィンドウの格納ディレクトリを除外。

<filter action="drop" type="wildcard" pattern="*/_image/*" />
...画像ファイルの格納ディレクトリを除外。

<filter action="drop" type="wildcard" pattern="*.css" />
...外部スタイルシートファイルを除外。

などをリストから除外するファイルとして設定しています。ディレクトリの指定の時に"*/"で記述を始めると、すべての階層の同名のサブディレクトリに対して有効になります。

ここでできるだけ「リストに入れる必要のないファイルを除外」という設定を行っておくと、Googleに効率よくサイトマップデータを送ることができるようになります。

このサイトは既に更新を終了していますが、今のところ店じまいの予定はありません。 リンクフリー ですので、趣味や勉強のためでしたら、引用、転用、コピー、朗読、その他OKです。このサイトへのリンクについては こちら をご覧ください。
Powered by Apache
”Linux”は、Linus Torvalds 氏の各国における登録商標です。”Red Hat”及びRed Hatのロゴおよび Red Hat をベースとしたすべての商標とロゴは、各国におけるRed Hat, Inc. 社の商標または登録商標です。その他のプログラム名、システム名、製品名などは各メーカー、ベンダの各国における登録商標又は商標です。
www.centos.org - The Community ENTerprise Operating System