言葉のさんぽ道

~気ままに写真とゲームの話題が更新されるはず~

Apacheの「rotatelogs」に気をつけろ!

たまにはお仕事の話。
Apacheの「rotatelogs」を利用している人はhttpd.confの設定に気をつけるべし。
貴方のhttp.confでは、こんな記述になっていないだろうか?

TransferLog /logs/access.log
TransferLog /logs/error.log

TransferLog "| /apache/bin/rotatelogs /logs/access.log 604800"
TransferLog "| /apache/bin/rotatelogs /logs/error.log 604800"

こんな記述の人は要注意。
こう記述しているとaccess.logの内容がerror.logにも出力されてしまう。
正しくは以下。

TransferLog /logs/access.log
ErrorLog /logs/error.log

TransferLog "| /apache/bin/rotatelogs /logs/access.log 604800"
ErrorLog "| /apache/bin/rotatelogs /logs/error.log 604800"

要はログローテートする対象のファイルが複数ある場合は、「Logディレクティブ」を別々にしなさいってこった。
これ、実は@ITにすら間違って載ってしまっている。自分も騙されました。
皆様お気をつけて。。。