W-0042 Referrer の謎

ここに掲載している情報は間違っている可能性が非常に高いので、信用してはならない。これらの情報を信用してアナタが不利益を被ったとしても、それは全てアナタの責任である。

アクセス解析をしていると、リンク元などの項で自分のサイトと全く関係のないサイト、自分のサイトへのリンクが見あたらないページなどが記録されることがあります。これは一体何故なのでしょうか。

原因1・ IE のバグ

ブラウザは、リンクを辿る際に「ここから飛んできました」という URI の情報Referrer という名前で記憶・サーバに送信しており、 Referrer は CGI や JavaScript で簡単に参照することができます。この手のアクセス解析スクリプトは、基本的にはこれを集めて記録しているに過ぎません。

ページ中のリンク文字列をクリックした場合、 Referrer は当然リンク元ページの URI になります。ブックマークやお気に入りからアクセスしたり、あるいは URI を直に入力した場合には、 Referrer は Bookmark とか none とかそういう感じになります。ところが Windows の IE は、お気に入りからアクセスしたり URI を直接入力した場合に、 Referrer が直前に表示していたページや別のウィンドウで開いていたページの URI になる(ことがある)というバグを持っています。見覚えのない URI が Referrer に残っている場合、大概はこれが原因です。

原因2・ Proxy などで Referrer を固定している

広告表示を自動的に削除したりすることができる Proxomitron というローカル Proxy がありますが、作者が少年ナイフのファンだとかで、これを使ってアクセスした場合初期状態では Referrer が必ず少年ナイフのサイトになります。 Referrer が少年ナイフの場合、これが原因と見て間違いないでしょう。

Proxomitron を使わなくとも Referrer の値は簡単にいじれます(僕はやったことないですが)。特定の URI からのアクセスが妙に多く記録されていて、しかもそこに自分のサイトへのリンクが見あたらない場合、 Referrer を操作するツールが使われている可能性が高いです。