Apacheのログ設定
提供: Astarisk Works Wiki
目次 |
はじめに
Apacheを標準で使っていると、アクセスログに画像へのGETまで記録されてしまい、ログが肥大化する。必要ないならば画像へのGETは記録しないようにしたほうがいい。 ここでは、「 mod_setenvif 」というモジュールを使用して、画像へのGETを記録しないようにする設定を説明する。
設定方法
モジュールの確認
デフォルトではmod_setenvifは標準でインストールされますが、念のため httpd.conf に以下の記述がある事を確認する。
LoadModule setenvif_module modules/mod_setenvif.so
ログの設定
確認ができたら、具体的に設定していきます。
httpd.conf の中に画像ファイルのログ採取に関する以下の記述を追加します。 環境変数「 no_log 」の中にログ採取しないファイルの拡張子を記述する。
SetEnvIf Request_URI "\.(gif)|(jpg)|(png)$" no_log
追加する場所は LoadModule 以降ならどこでも構わないが、LogFormat や CustomLog の記述がある辺りが後で見て分かりやすい。
次に CustomLog に関する記述を編集する。 具体的には以下の様に編集する。
デフォルトの記述
CustomLog /var/log/httpd/access_log common
以下の様に変更する。
CustomLog /var/log/httpd/access_log common env=!no_log
設定ができたら、Apache を再起動し、変更を反映させる。
応用
Javascriptファイル、CSSファイルもログに記録したくなければ、SetEnvIfの設定でjsやcssも追加すればよい。