一回しかアクセスしていないのに・・・
2006/10/19 | その他
アクセス数をカウントするプログラムを書いていて、わけのわからない症状がでた。
最初のアクセス時に、なぜかカウントがいきなり3になる。本来ならデータベースに新規レコードが追加されて、カウントが1にセットされるはずなのに・・・。しかし一旦データを削除して、もう一度同じURLにアクセスすると今度は1。なぜ?、なぜ??。
調べた結果、googleアドがちょっかいを出していることがわかった。googleアドは自分が呼び出されると、googleのサーバから当該URLにリクエストを出して、それによって表示内容を決定する(と思う)。
結局いきなり初期値が3になるのではなく、1でレコードが追加されたあと、googleが2つカウントアップしていたわけだ。
カウントアップのプログラムでUSER_AGENTをチェックすることで問題解決。これは久しぶりにはまってしまった。