Apache 画像ファイルへのアクセスログを記録しない設定の間違い
サーバの入替作業をしているときに「css」というディレクトリに index.php を作成して、アクセスログを確認しようと思ったのですが、なぜか index.php へのアクセスログが出力されない、、、
あちこち設定ミスが無いかと探って小一時間、原因はこれでした。
Apacheのアクセスログに、画像ファイルなどへのアクセスのログが記録されてしまうと見通しがよくないため、該当する拡張子のファイルはアクセスログへ記録しないように設定していたつもりでしたが、この設定だとディレクトリ名やファイル名に「.gif」「jpg」「png」「css」が含まれているとアクセスログに記録されません。
ようは正規表現のミスですな(^^;)
. (ドット)の後に「gif」か「jpg」か「png」か「png」か「css」か「js」で終わるURLリクエストを指定したつもりが
該当する拡張子が () で囲われているため
「.gif」か「jpg」か「png」か「png」か「css」が含まれるか「js」で終わるURLリクエストが指定されてしまっています。
そこで、両端の () 以外を削除して Apache再起動、アクセスログが無事に出力されました(^^)/
参考にさせて頂いたサイト
・サルにもわかる正規表現入門
http://www.mnet.ne.jp/~nakama/regexp4.html
あちこち設定ミスが無いかと探って小一時間、原因はこれでした。
SetEnvIf Request_URI "\.(gif)|(jpg)|(png)|(css)|(js)$" nolog
Apacheのアクセスログに、画像ファイルなどへのアクセスのログが記録されてしまうと見通しがよくないため、該当する拡張子のファイルはアクセスログへ記録しないように設定していたつもりでしたが、この設定だとディレクトリ名やファイル名に「.gif」「jpg」「png」「css」が含まれているとアクセスログに記録されません。
ようは正規表現のミスですな(^^;)
. (ドット)の後に「gif」か「jpg」か「png」か「png」か「css」か「js」で終わるURLリクエストを指定したつもりが
該当する拡張子が () で囲われているため
「.gif」か「jpg」か「png」か「png」か「css」が含まれるか「js」で終わるURLリクエストが指定されてしまっています。
そこで、両端の () 以外を削除して Apache再起動、アクセスログが無事に出力されました(^^)/
SetEnvIf Request_URI "\.(gif|jpg|png|css|js)$" nolog
参考にさせて頂いたサイト
・サルにもわかる正規表現入門
http://www.mnet.ne.jp/~nakama/regexp4.html
16
| h o m e |