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 件のコメント:

コメントを投稿

結局は可愛い我が子

以前の会社の話。 俺がいたころ、「当時の社長」の息子が転職してきた。 「あー、結局は同族会社か」 と思ったし、まあ、ほかのヤツもそう思ったよね。 その時は否定した「当時の社長」。 でも、なーんか含みを持たせた逃げの言い訳してたなー。 その器があればとか、 周りが認めてくれればとか...