Googleの事情 − 動的ページと静的ページ(2)
(前回からの続き)
アマゾンのほとんど全てのページが動的ページである。
しかしGoogleにはwww.amazon.co.jp配下のページが140万ほどインデクスされている。
おいおい、誰だ動的ページは検索エンジンにクロールされにくいとか言ってるのは?!
真相を調べるには当事者に聞いてみるのがもっとも手っ取り早い。
Google では、ダイナミックページもインデックスに登録できます。 ただし、クローラはダイナミックコンテンツのあるサイトに負担をかけてクラッシュさせる可能性もあるため・・・ダイナミックページとかダイナミックコンテンツとはもちろん動的ページのことだ。 動的ページはアクセスがあるたびにWebサーバ上のCGIプログラムないしその背後のAPサーバ上のプログラムが実行された結果がコンテンツとしてブラウザに返される。 ただそこにあるファイルの中身をそのまま返すだけの静的ページと違い、アクセスがある都度プログラムが実行されるためCPUパワーと時間をかなり食ってしまう。 もしそのプログラムが背後のデータベースにでも検索に行くタイプのものならなおさらである。
(Web マスターのための Google 情報)
ここからはやや筆者の推測が混ざるのだが、開発された初期のGoogleはまだクローラー(Googlebotのこと)は台数も性能もよくなかったので、標的のサイトに対しかなりの頻度(数秒おきとか)で繰り返しアクセスしていた。しかしそれでは、貧弱な性能のマシンなのに動的ページが多いようなWebサイトが相手だとGooglebotによる繰り返しアクセスでマシンがダウンしてしまうケースがあったのだろう。「負担をかけてクラッシュさせてしまう可能性・・・」とはこのことだ。で、Google帰れ!とWebマスターはカンカンになる。この教訓もあって、現在のGooglebotは1分間に2アクセス以上は絶対しないようになっている。
こんなのもある。
Q. Googlebot が私のサイトをクロールするスピードが速すぎます。どうしたらよいですか?現在もGoogleはこの問題にかなり気を使っていることがうかがえる。
A. サイト名と問題の詳細を添えて、電子メールで googlebot@google.com までご連絡ください。Web ログで Google のアクセスを示す部分も添えていただければ、こちらでより早く問題を突き止められます。
(Web マスターのための FAQ)
Googleが動的ページを積極的にクロールしない理由はほかにもある。
セッション ID やサイト内のパスを追跡する引数がなくても、サーチ ロボットがサイトをクロールできるようにしてください。これらのテクニックは個々のユーザーの動きを追跡する場合に便利ですが、ロボットがアクセスするパターンとはまったく異なります。これらのテクニックを使用すると、一見異なっているようで実際は同じページにリンクしているURLをロボットが排除できず、そのサイトのインデックスが不完全なものになる可能性があります。「セッションIDやサイト内のパスを追跡する引数」とはいったいなんのことだろう? たとえば ヒューレットパッカード社の直販ショッピングサイトを例に説明しよう。 トップページからどこでもよいので適当に商品リンクをいくつかたどっていくと、URLにおかしな文字が入っていることに気づくだろう。
(Web マスターのためのガイドライン)
http://www.shopping.hp.com/...store_access.jsp?BV_SessionID=@@@@0644540149.1098543935@@@@&...これがセッションIDである。これは何に使うかというのは上にあるとおり、 個々のユーザーの動きを追跡する=サーバーサイドWebプログラミング専門用語で言うと「セッションを維持する」=ためにURLに自動的に付加される。
一般的な「買い物カゴ」の機能もこうしたセッションという概念を利用している。セッション維持用の変数をユーザーに保持させるには通常はCookieを使う。しかしCookieを使用できない古いブラウザ=PC用ブラウザでは今時あり得ないが携帯端末用ブラウザなどではいまだに使えない=に対応するためだったり、欧米ではCookieの利用はプライバシーの侵害だとする動きが盛んなため(Cookie使用禁止の法律すらできかけたことがあったとか)こうしたセッション維持変数のURL埋め込み方式を使用するケースは珍しくない。
同じ商品のページにアクセスするとしても、人によって(もちろんクローラーも含め) セッションIDが個別に発行される。ページ上のアンカーリンクタグ内のURLには全てこのセッションIDが自動追加される。ということはURLが事実上無限に存在してしまう。検索エンジンはそんなのまでいちいち相手にしていたらキリが無い。ということで、こうしたタイプの動的ページもやはり積極的にインデクスに加えようとしない。「一見異なっているようで実際は同じページにリンクしているURLをロボットが排除できず・・・」というのはこのことだ。 ちなみに上で紹介したwww.shopping.hp.com のページはGoogleではたったの1700件しかインデックスされていない。あれほどの規模のサイトでこれだけのページしかないというのはありえないのに。
で、動的ページ使いまくりのアマゾンなのに日本のアマゾンだけで見ても140万ほどインデクスされていることはどう説明できるのだろう? しかもアマゾンだってアクセスしてよく見るとURLの最後にセッションIDっぽい数字が自動追加されてるのに?? という話をようやく書き始めようと思ったら長くなったので次回。

コメントする
(初めてのコメントの時は、コメントが表示されるためにこのブログのオーナーの承認が必要になることがあります。承認されるまでコメントは表示されませんのでしばらくお待ちください)