Apacheログの観察記録

はじめに 基礎知識? 検索とキャッシュと画像
IPアドレスとホスト名 Googleを呼び寄せる男 Yahoo! の検索エンジン
アクセス急上昇

作成:2004/04/26、 最終更新:2004/09/01


はじめに

 ワタシはこのサーバ(tyche.pu-toyama.ac.jp)のコンテンツ管理者として、 Apacheのログ、主にアクセスログをたまに見ている。確かに、syslog全部を見るのは つらい。その点で「ログ集約システム」は役に立つだろう。ただ、ワタシにとって アクセスログを見ることは、それほど というより、全くつらくはない。逆に、 アクセスログは、結構おもしろい。自分の作ったページがどのように閲覧されている のか、その流れを考えながら見ていると知らず知らずに時間がたっている。時間さえ あれば何時間でも見ている可能性がある。

 そこで、眺めていて、気づいたこと、思ったこと、調べたことを書いてみる。 アクセスログを見ることができない状況の人には、あまり役に立たないだろう。


基本知識?

 Apacheのアクセスログは、/etc/httpd/conf/httpd.confあたり(Windows版は 知らないけど)の設定にもよるが、たぶんデフォルトでは、

が記録されている。

 Referrerとは、取得されたファイルを参照しているURLである。 つまり、取得したページへリンクを張っているページのURLや、画像を貼り付けてある ページのURLがそれにあたる。Referrerは閲覧順序を見るにの役にも立つのだが、特に 使えるのは検索ワードの調査である。検索サイトで検索し、そこからあるページに やって来た場合、Referrerは、検索結果ページのURLとなる。大抵の検索サイトは、 URLから検索ワードを読みとることができるようになっている。それを用いて解析する ソフトの1つとしてWebalizerがある。このあたりの話は「 Webalizerの日本語検索語対応の話」を参考に してほしい。

 このページの内容は、比較的検索サイトと絡んだ話になると思う。


検索とキャッシュと画像

 いくつかの検索サイトでは、検索結果ページから「キャッシュ」の閲覧ができる ようになっている。キャッシュは検索サイト側で蓄積しているページであり、これを 使うことによって、場合によっては本家に取りに行くより早くページを見ることが できたり、本家が消えていてもページを読むことができたりする。これは検索サイトの 利用者としてはありがたい機能といえる。

 また、検索結果から参照されてページを把握する機能を持っていない検索サイト( 例えば Google とか。逆に持っているのは、例えば goo)を運営している側にとって も、各ページの人気度 みたいなものを見る指標となるだろうから、検索結果表示機能の 向上あたりで役に立つだろう。

 しかし、Webページを提供している側にとってはちょっと困る(って程じゃないが) ことがある。それは、多くの人がキャッシュされているページを見ていたとしても、 それがわかり得ないということである。つまり、提供側のサーバにアクセスがない のだから、ログが記録されるわけはない ということである。

 HTMLファイルの場合、「キャッシュしないで」って感じの文言を metaタグ に 書けば、検索結果に「キャッシュ」が表示されなくなるようだ。しかし、別にそこまで キャッシュを拒否したいわけではない。

 そこで、ワタシは実践している策は「どのページにも、1つ以上画像を付ける」 というものである。とりあえず、Google のキャッシュページにある画像は、本家に取り に行くようになっている。そのように画像を取りに来た場合は、Referrerがキャッシュ ページのURLとなっているので、キャッシュで自分のページが参照されていること、 検索ワードが何であるか を知ることができる。 「マウントのページ」の最後に絵があるのは そのためである。

マウントのページ
とりあえず画像を張る

 キャッシュ問題は、おおよそこれでいいのだが、検索調査で困るのは、Referrer がなく、直接URLを指定して来た となっている場合である。サーバのルートページや、 個人のルートページへなら、直接URLを入力して来ることも考えられなくはない。 しかし、そんなことができるのは、せいぜいでそのサーバの利用者くらいであろうし、 利用者でも、自分のページじゃない限り、そんなことはあまりしないだろう。

 その原因は2つ考えられる。1つは 閲覧者が使用しているブラウザがReferrerを つけないような設定になっている ということである。確かに、自分の見ていたページが 行き先の人にお知らせされる と思うと、嫌悪感を覚える人もいるだろう(ワタシは あまり気にならないが)。

 もう1つは、検索結果を「新しいウィンドウ」で開いたり、「新しいタブ」で 開いたりしている ということである。ブラウザによっては、そのようにしてページを 開いた場合、Referrerを付けないことがあると思われる。


IPアドレスとホスト名(ドメイン名)

 ログには、アクセスしてきたホストのIPアドレスかホスト名が記録されている。 最近まであまり気にしてなかったが、"IPアドレスかホスト名"で、なんとなく IPアドレスの方が多い、というか、ほとんどがIPアドレスである。で、ホスト名( ドメイン名)なのは学内のホストがほとんどである。

 とりえあず、grep で研究室系DHCP割り当てドメインをターゲットに絞り込んで みた。すると、アクセスしているのが、学外からの制限をしているページばかりで あった。とは言え、全ての制限ページがホスト名になっている訳けではない。 そこにポイントがあると思い、アクセス制限を設定しているファイルである".htaccess" を見比べてみた。その結果、以下のような違いが見られた。

IPアドレスになる ホスト名になる
<Limit GET>
order deny,allow
deny from all
allow from 192.168.
allow from .abcde.ac.jp
</Limit>
<Limit GET>
order deny,allow
deny from all
allow from .abcde.ac.jp
allow from 192.168.
</Limit>

 これらはどちらも「IPアドレスが 192.168. を含むか、ホスト名が .abcde.ac.jp を含む場合、そのディレクトリ上のファイルにアクセスできる」ことを示している。 違うのは、IPアドレスを先に書くか、ホスト名を先に書くかである。つまるところ、 先に書いてある条件から順に確認していくため、ドメイン名での許可が先にあると、 まずはIPアドレスから、DNS問い合わせあたりでドメイン名の取得が行われることに なる。そのような形でドメイン名を取得した場合、ログにはドメイン名で記録される。 このことから考えるに、"allow"のIPアドレスを先の方に固めておいたほうが、幾分か 処理効率がいいと言えそうだ。


Googlebotを呼び寄せる男

 このサーバを訪れる方を単純に分類した場合、当然ながら(?)学外からの人のほう が多い。そして、その方々は大抵検索サイトからやってくる。その中でも一番多い サイトはGoogleである。ウチのサーバはGoogleに結構いい評価をいただいている ようで、適当なワードで検索した場合、比較的上位に表示されることが多い。

 Googleの検索用データは"Googlebot"なるWebロボット(クローラ、スパイダ)が 収集している。ウチにも月1くらいのペースでやってくる(掲示板はもう少し頻繁に 取りに来ているような気がする)。先日、そのGooglebot(以下 bot)からのアクセス ログだけを表示させ眺めていたところ、なぜか学外には公開していないページを取ろう としていたことがわかった。外向けサイトにリンクが張ってあるのならば、そんなこと もあるだろうが、そのページは直接URLを打ち込まないと行けないようになっている はずである。なのに、何故?

 考えられる原因としてまず、「誰かがどこかのページにリンクを張ってしまった」 というものがあげられた。ということで、「grep "GET パス " access_log | grep http 」で絞って表示させてみた(http はReferrerがあるものだけを拾うために用いた)。 しかし、それらしいものは表示されない。ログを見る限り、この説は違いそうだ。

 ただ、その絞込み表示の中に、ひとつ気になるものがあった。それは、Googleの 検索ワードにURLを入力して検索ボタンを押し、その検索結果ページのリンクから目的 ページにたどり着いたという感じのものであった( 下記のような感じ)。しかも、その 数分後にbotが来ている。原因としてこれは有力であると思い、別のURLで試してみた。 が、しかし、何分たってもボットがこない。「URL検索」説も違いそうだ。

Google
これではないらしい

 ここまでの調査でわかったのは、botが来る数分前に同じページにアクセスしてい るということだった。ということで、botが来る少し前のログを重点的に眺めてみた。 と、学内用コンテンツをbotが取りに来る数分前に必ず、特定のマシン(というより、 研究室の個人専用マシンなので、特定の人)から同じファイルへのアクセスがあった。 これは、怪しいと思い、そのマシンからのアクセスと、botからのアクセスの関係の調査 を行った。すると、学内コンテンツは100%、学外コンテンツでもいくつかファイルに、 [そのマシンからのアクセス]→数分→[botからのアクセス] の流れがみられた。

 ズバリ 原因はこれだろう と思い、そのマシンの使用者に聞いてみた。が、本人に そんな自覚は無く、逆に「そんなことできない」といった感じであった。そこで、 とりあえずワタシが観察して得た事実を説明し、別のURLにアクセスしてもらった。 数分後、botがやってきた。これでようやく原因が特定できた。つまり、彼のマシン からアクセスするとbotがやってくるということである。これで、一件落着。と 思ったが、根本解決にはなっていないし、当の本人も納得していない。

 確かにおかしい。なんで一個人がbotをコントロールできるのだ? 彼はGoogleの エージェントか? って、何で彼?(きっとかしこいからだろう) とは言え、本人に 自覚が無い。とすると、何かスパイウェアみたいなのが動作しているということか? そうだったとして、何を機にbotにアクセスさせているんだ? よくわからん。

 よくわからんけど、彼が使用しているブラウザは「Opera」である。とりあえず、 ワタシもダウンロード・インストールしてみた。まあ、シャレた感じのつくりだけど、 右上にコマーシャルがあるのは好みじゃない といった印象である。で、設定項目に どんなコマーシャルを出すかの選択がある。「Googleから関連内容の広告の提供を 受ける」のと、「一般的な広告を受ける」といった2種類がある。ん? Google? 怪しい。とりあえず「一般的」に設定して、URL指定で自分のページを参照してみる。 何分たっても何も起きない。次に、「Googleから提供」に設定し、別のURLを指定・ 参照してみる。数分後、botがやってきた。

 この件に関して、ようやく筋の通った結論が得られた。彼は約1ヶ月前、システム を入れ替えたとき、Operaをインストールし、「Googleから提供」に設定した。それを 用い、学内専用コンテンツにアクセスしたため、botが取りに来た ということだろう。

 ここで気になるのが、"なぜbotを呼び出すことができるのか"ということであろ う。これは、およそ次のような流れだろう。先のような広告設定をした場合、Opera ブラウザは常に閲覧しているページ(のURL)を観察し、逐次Googleに広告用データ としてそのURLなどを送信する。Google側はそのデータをもとに、コマーシャルを提供 する。時としてそれは、Googleではまだ取得していないページのURLである場合もある。 そうなると、適切なコマーシャルの選択が行えない。そこで、そのページの内容を把握 すべく、botにそのページを取得させる。 まあ、Googlebot-Operaの謎は こんなところ だろう。

 とりあえず、ワタシは(こんなことがあることを知ってしまったし)はなっから Operaを常用するつもりはこれっぽっちもないので、どうでもいい。が、愛用している 人は、設定によっては「自分の見ているページは常にGoogleに報告されている」という ことを認識しておくことが賢明であろう。もちろん報告した内容が直接悪用される 可能性は低いといってもいいのだろう(ワタシは保証しないが)。ただ、「どこからも リンクを張っていない隠しページ」と思って作ったページに、上記の条件でアクセス した場合、たぶん「隠しページ」がGoogleに登録されることになる。

 先述のように、Operaを常用するつもりは無い。だが、アンインストールをしよう とは思わない。たまに使おと思う。それは、新しいページを作ったとき、Operaで アクセスすれば、すぐにbotが取りに来てくれるからだ。

[2004/05/30 追記] このように記述したものの、Opera広告の場合に使われる bot は通常の bot とは違うもののようだ。結局、このbotがページ取得しても検索に 反映されることはなさそうである。User-Agent は"Mediapartners-Google/2.1"となって おり、確かに別の機構であるような感じはあったが、、、そういうことのようだ。


Yahoo! JAPAN の検索エンジン

2004/6/15

 2004年5月31日(?)から、Yahoo! JAPAN のページ検索のエンジンがそれまでのGoogle から、なにか独自なものに変ったらしい。まあ、どのようなモノに変ったのかはよく 分からないが、なかなか微妙な感じのモノになっているように思う。

 まずは、検索結果のリンクであるが、これまでのことはよく覚えていないが、 とにかく現在は、Yahoo! のサーバを介して参照するページを開くことになっている。 つまり、検索結果のうちどのページを選んだのかが Yahoo! に通知されるということ である。たぶんそのデータは検索結果スコアリングに反映されるのだろう、きっと。 そうでなければ、、、いやな感じである。ワタシは基本的にそういう検索サイトは 趣味ではない。Yahoo! サーバが込み合っていたら、ページが読み込まれるまで時間が かかるではないか。

 上の話はログなことじゃなかったな、ははは。次はログなことである。数週間ぶり にログを眺めていたら、やたらYahoo! 検索からのReferrerが目についた。と、よく見て みると、2行続けて記録されていることが多い。さらによく見ると、1回目は 301 2回目 は 200 のHTTPステータスコードが返っている。具体的にあげると、「/~ko-ji/apache」 にサクセスしてくるが、そんなアドレスのコンテンツはないけど「/~ko-ji/apache/」 ならばあるので 301 で返す。そして、次は「/~ko-ji/apache/」にアクセスし、 コンテンツがあるので 200 で返す といった感じである。つまり、本来は 「http://tyche.pu-toyama.ac.jp/~ko-ji/apache/」へ向けて張る べきリンクを、Yahoo! 検索結果では「http://tyche.pu-toyama.ac.jp/~ko-ji/apache」 に張っているわけである。うーん、間抜けだなぁ。ウチみたいなあまり忙しくない サーバならともかく、忙しいサーバさんにとってみたら、結構うざいかも。ちなみに、 詳しくみてみたら、msnサーチも同じような作りのようだ。どう考えてもバグだよなぁ。 なんかレベルの低い検索システムになっちゃったんだなぁ という印象を受けてしまった 今日このごろである。

 とはいえ、Yahoo! は良く利用されているようだ。昨日(6月14日)までの 集計で、今月のエラー301 の発生件数は 250件くらいである。これまでは1カ月で 200件を切るくらいが普通(多くても300はいかない)だったので、発生件数が増大して いることがわかった。この 250件のうち 130件くらいが Yahoo! 検索によるもの とみられる。ここに Yahoo! 検索の活躍ぶりが感じられる。

 Yahoo! の検索システムは、まだ発展途上なのだろう、きっと。こんなくだらんバグ は一日も早く修繕されるように願おう。


アクセス急上昇

2004/09/01(更新)

 まずは次の表を御覧いただきたい。これはwebalizerが出力した、2004年7月の 検索ワードのランキングである。つまり、7月1日〜31日の期間に、搭載サイトのページ にやってくるために検索ワードとして、検索サイトで使われたものをその使用回数順に 示したものである。

2004年7月の検索ワードランキング

 ベスト10に入っているワードは、ここ数ヶ月の間、多少の順位変動はあるものの、 いつも見かける「常連ワード」といった感じになっている。特に、1位と2位のワードは 4月以降、抜きつ抜かれつの接戦状態となっていた。が、8月に入り、その様相は一変 した。次に8月のランキングを示す。

2004年8月の検索ワードランキング

 トップが入れ替わった。順位がどうとかいうよりも、ヒット数がずば抜けている。 これまでは、どんなに調子の良いワードでもヒット数が100を越えることはなかった。 また、7月はランク外(50位以下)だったワードが7位と10位にランクされている。 はてさて、なんでいきなりランクアップしたのだろうか?

 まず考えられるのは、そのワードで検索する人の数が急増したということである。 たとえば、ニュースで取り上げられるなどした「旬な言葉」などは、検索される数が 急増したりするだろう。そういった感じで、これらのワードが……、と思ったが、 どちらも"最近"話題といった印象はない。確かに7位の言葉は何ヶ月か前に話題となった 本のタイトルだと記憶している。1位のほうもやはり本のタイトルのようだ。ただ、 どちらも昨年8月に出版されたようである。となると、ここ最近になって、これらの本の 感想を聞いてみたくなった人が急増したことになる。本を読んだ感想を、夏のこの時期 に、読書の感想を。夏休み 読書感想コンクール。。。いやいや、別の可能性だって 考えられる。

 たとえば、これらのワードに該当するページ・内容が7月の中頃に記載・インデッ クス化されたという可能性がある。その場合、7月上旬はアクセルされることがなかっ たためヒット数が少なかったと考えられる。ということで、6月のアクセスログを調べて みた。すると6月にも、どちらの語も検索されていることが判明した。ということで、 この説ははずれてしまった。

 次に考えられるのが、検索サイトにおけるページのランクが高くなったということ である。皆さんもご存じの通り、検索サイトで検索したとき、使用したワードに当て はまるページが複数有った場合、その結果は何らかの基準により並べて表示される。 利用者としては、自分のほしい情報が載っているページを先に表示してもらいたい ところである。検索エンジンでは、そうなるように様々な工夫がなされている(はずで ある)。その工夫の詳細は公開されていない(はず)なので、ウソかホントかは分から ないが、多くの人に見られている(参照されている)ページはきっと良いページだろう から、先に表示されやすくする って考え方があるようだ。その「参照され度合い」が 検索サイトにおけるランク ということになる。ランクが上がればアクセスされる機会も 多くなり、そしてまたランクアップにつながる、といった流れに乗ったため、ヒット数 急上昇にいったかもしれない。この点に関しては過去に戻って検索してみるのが 手っ取り早いけれども、そうもいかない。けれども、6月時点のログを見える限り、 急激にランクアップしたとは思えない(6月の時点で現在と同じ、検索結果の最初の 20件に入っている(Yahooサーチ))。

 う〜ん。となるとやっぱり読書感想を。。。まあ、どの本を読もうか迷いながら、 検索していたのだろう、きっと。なにか良さそうな本はないかなぁ って。ちなみに、 1位のワードの日付別ヒット数は次のようになっている(面倒だったので、Yahooサーチ のものだけカウントした。計218件だが、こちらは重複処理とかしていないので、 上の表のヒット数が全てYahooサーチからであったとはいえないだろう)。

1位ワードの日付別ヒット数


戻る