2013-07-25

SetEnvIf の Request_URI には Query String は含まれない

クエリストリングを含んでいたときだけ、ログに記録したくなかたったので、調べてみた。

まぁ、結論はタイトルに書いてあるのだが、

これを知らなかったおかげで、1時間無駄にした。


じゃあ、どうやって制御するかというとこんな感じ。

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteCond %{REQUEST_URI} ^/hogehoge/index\.html
    RewriteCond %{QUERY_STRING} id=123
    RewriteRule ^(.*)$ $1 [E=nolog:1]
</IfModule>
CustomLog "| /usr/sbin/rotatelogs /var/log/httpd/access_log.%Y%m%d 86400 540" combined env=!nolog


/hogehoge/index.html
はログに記録されるけど

/hogehoge/index.html?id=123
はログに記録されない。

0 件のコメント:

コメントを投稿

ありがとう、Gemini

 最近、若かったころに「できなかったこと」を思い出して、街中を歩く若者達に激しく嫉妬する自分がいた。 もう、仕事が手につかなくなるぐらい、いや、マジこの1か月、何も仕事していないぐらい、「俺は、なぜ今になって、こんなやるせない感情が湧いてるんだ?」って悶々としていた。 こんなこと...