クエッションコンテンツ

クエッションコンテンツでははてなブログをつかって色々なことを配信していきます!

動的なホームページはSEOから見るとロボットが読みにくいことになります。

動的なホームページとは?


通常のホームページは例えば、
http://www.kaipara.com/index. html
のように拡張子が「.htmU や「.htm」になっています。このようなホーム
ページを静的ホームページと呼ぶことがあります。これに対して、
http://www.kaipara.com/cgi-bin/search_key.cgi?KEY= 東京都
のようなURLを持つホームページを動的なホームページ(ダイナミック・
ホームページ)と呼びます。ここでsearch_key.c蔀のように「.c蔀」の拡張
子を持つものはCGIプログラムと呼ばれ、search_key.c' の実態はホームぺ
ージではなくてプログラムです。



プログラムがなぜホームページを表示するのか?


このプログラム例では「KEY=東京都」という部分がパラメータと呼ば
れる部分で、[KEY」がパラメータ名で「東京都」がパラメータ値となりま
す。このパラメータを受け取ったプログラムは、データベースから所在地が東京都のサイトを拾ってきてホームページに成形し
て表示しているのです。
[KEY=高知県」であれば所在地が高知県のサイトを表示します。このよ
うにパラメータの値によって表示するホームページが動的に変化するため、
一般に動的ホームページと呼ばれます。
動的にホームページを表示するプログラムには拡張子が「.cgi]、[.p以
[.php」や「.asp」などがあります。拡張子が「.cgi」なのはCGI言語と呼ば
れる総称であって特定の言語を指している訳ではありません。それに対し
て「.p1j. r.php」や「.asp」はそれぞれ特定の言語を指しています。
例えば拡張子p1はPenl (パール)というプログラム言語で書かれたプロ
グラムに付与される拡張子ですが、同時にCGI 言語にも該当するので拡張
子を「.cgi 」としても動作します。


動的なホームページはSEO上不利


動的ホームページではパラメータの与え方によってデータベースから
様々な内容のホームページを作成します。例えば、データベースにオリジ
ナルコンテンツが10ページ分しかなくても、見た目の違うホームページを
100ページ生成することも可能です。これではサイト自体をロボットが正し
く評価することができません。
また、プログラムの作りとパラメータの与え方によっては無限ループに
入ってしまいサーバに過負荷を与えてしまう危険性もあります。
このような理由からロボットは動的なホームページの読み込みを最小限
に抑えるように自粛しています。これをホームページ所有者の立場から見
ると、ロボットが自分のホームページを読み込んでくれないので動的ホー
ムページはSEO上不利だということになります。



動的ホームページを口ボットに読ませるには


Google 自身のホームページで動的ホームページに言及している箇所では、
ダイナミックページを使
用する場合、サーチエンジンクローラによっては、静的ページと同
じようにダイナミックページをクロールするとは限らないことを考慮
する必要があります。パラメータを短くしたり、パラメータの数を少
なくすると、クロールされやすくなります。
と説明されています。ここで「パラメータを短く」というのは、

OKEY =東京都

XKEY ADDRESS =東京都千代田区

ということです。「パラメータの数を少なく」というのは、
0 KEY=東京都
XKEY =東京都&ADD1=千代田区&ADD2=九段南
のように「&(アンパサンド)」記号を使ってパラメータの数を増やさない
ということを指しています。動的ホームページを作らざるを得ない場合に
は、これらの点について配慮すべきでしょう。
なお別のページでは、
クローラはダイナミックコンテンツのあるサイトに負担をかけてクラ
ッシュさせる可能性もあるため、インデックスに登録するダイナミッ
クページの数は制限されています
という解説もしています。プログラムを使ってホームページを動的に作成
するのはできれば避ける方が賢明です。


嫌われない動的ホームページを作る方法


ロボットに嫌われずに動的なホームページを作成する方法は2 つ考えら
れます。一つめは「.cgi 」という拡張子と「?」や「&」というパラメータ
用の記号を用いない方法です。例えば、
show.cgi?YI D=ABC&ZI D=777
というURLの代わりに
/show/ABC 777.html
のような一見すると静的なホームページに見えるURLに書き換えてしまう
方法です。ロボットはこのURLを静的なものと見なすので、動的ホームペ
ージだという理由でロボットに嫌われることはありません。実際にはURL
を書き換えただけで、裏側でshow.cgiのようなプログラムがリアルタイム
に動的なホームページを作成しています。
この方法は無駄がなくてスマートですが、サーバのROOT(ルート)権
限という特権を持っていないと実現が困難です。月間数千円程度のホステ
ィングサービスを利用している場合は残念ながら対応できないと思われま
す。具体的には、インターネットで広く使われているAPACHE (アパッチ)
というサーバでは例えば「URL書き換えモジュール」(mod rewrite) を使
用することでこのようなURLの書き換えが可能です。
もうーつの方法はやや原始的になりますが、実際に「ABCJ77.html」の
ような静的なホームページを作ってしまう方法です。サーバ上で、
show.cgi?YID=ABC&ZI D=777
というURLで表示されるホームページを「ABC 777.html」という名前を付
けて保存すれば、rABCJ77.html」というファイル名の静的なホームペー
ジができあがります。このような処理を深夜から早朝にかけてバッチ処理
という方法で一括作成すれば、ロボットに嫌われないホームページとする
ことができます。ただし、ホームページの更新頻度は1日1回となってリ
アルタイム性に欠けるので注意が必要です。


動的ホームページも読み込まれることがある


動的に作成されたホームページをロボットがまったく読み込まないのか
といえば、実はそうでもありません。筆者自身が管理しているホームペー
ジの例では、
show_detail.cgi?XID=7&XNAME=自然食品
のようなパラメータが2つ(XIDとXNAME) もある動的ホームページで
もロボットがインデックス化している例があります。では、どのようなケ
ースであればロボットは動的ホームページを読み込むのでしょうか?
筆者の経験則では、ページランクが高いホームページであればそこに存
在するURLが動的ホームページであってもロボットが読み込む傾向があり
ます。また、動的ホームページ自身のページランクは一般的に低い傾向に
あるため、動的ホームページから別の動的ホームページへのリンクはロボ
ットが辿らないように思えます。
動的ホームページをロボットに読み込ませるには、パラメータ調整と同時に、ページランクの高い静的ホームページからリンクをする
などの工夫が必要でしょう。