2005/01/20
■[tDiary]counter.rbのカウントアップ制限
うちのサイトのカウンターは実質的にユニークアクセスしかカウントしない設定になっているのですが、サイトを更新してから1週間後でも平均100アクセスくらいあります。
で「これは絶対おかしい!」とずっと思っていたのですが、今日tDiaryのcounterプラグイン(counter.rb)のソースコードを読んでやっと原因が分かりました。counterプラグインって、デフォルトではGooogleBotすらカウントしてしまうみたいです……tdiary.confでゼロからちゃんと設定しないとダメだったんですね。
そこで、どれくらいボット(robotの略;サーチエンジンやアンテナからのクローラ)が来ているのか実態調査するために、
- GETメソッドでトップページまたはHTMLを要求しているログだけを取り出す
- 既に見つけているUser-Agent文字列を含むログは除去
という簡単なRubyスクリプトを書いて、Apacheのアクセスログ過去2週間分に対して実行してみました(我ながら暇人だなぁ)。その調査結果を反映させた、tdiary.confの設定結果はこちら(↓)。
# counter
# カウントアップ制限
@options['counter.deny_user_agents'] = ["Googlebot", "Bulkfeeds", "msnbot", "Hatena Antenna", "Infoseek SideWinder", "Comaneci_bot", "BlogRanking", "ichiro", "Technoratibot", "CaptainNAMAAN", "Download Ninja", "ping.blogger.jp", "ia_archiver", "NaverBot", "ndl-japan-research-robot", "Wget", "Nutch", "nAntenna", "Mediapartners-Google", "lwp-trivial", "nomadscafe_ra", "ConveraCrawler", "KMHTTP", "Tarantula", "Pockey", "Microsoft URL Control", "Livedoor SF", "Bloglines"]
ボットって、結構いろいろあるものなんですねえ……。これでしばらく様子を見ます。
----
(2005/01/21追記)
後からよく見たら、MUTOPON7 ANNEX - アクセスカウンタ表示プラグインの説明に
また、@options['bot']もカウントしません(@options['counter.deny_user_agents']と同じ)。
と書いてありました。botはちゃんとある程度弾いてたみたいです……文章もソースコードも読めないのか僕は(汗) というわけで、@options['bot']に元々入ってなかった分だけ、そちらへ移動させました。
また、この日記に無関係と判断したコメント及びトラックバックは削除する可能性があります。ご了承ください。