北海道苫小牧市出身の初老PGが書くブログ

永遠のプログラマを夢見る、苫小牧市出身のおじさんのちらしの裏

mod_perl

最近わかってきたんだけど、mod_perlってただのCGIエミュレータじゃないんだよね。Apacheの様々なハンドラをPerlで書けるようにしてる、って見方の方が正しい。つまり、Apacheの動きをカスタマイズできる



で、今日はアクセスログに独自に発行したユーザIDを追加するってのをやってみた。つまり、簡易トラッキング。$r->notes(NAME => VALUE)ってのを使って先のハンドラにユーザIDを渡し、後はmod_logにお任せ。フォーマットで%{NAME}n って指定すれば、それでログに吐いてくれる。



後は、コンテンツハンドラのチェインなんてものを見てみた。うまくSTDOUTをtieしていけば、フィルタも作れるって寸法だ。



・・・まぁ、トラッキングもフィルタも、Apache2.0では標準サポートなんだけどね(ぼそそ。