Apache HTTPd – rotatelogs不起作用

我已经编辑了我的conf.d / ssl.conf文件,并从以下版本更改了TransferLog指令:

TransferLog logs/ssl_access_log 

 TransferLog "|/usr/sbin/rotatelogs logs/ssl_access_log.%Y-%m-%d.log 60" 

(我正在使用60秒进行testing)

由于这一变化和httpd重新启动我的原始ssl_access_log没有更新,并没有生成一个新的日志。 我错过了什么?

在我的错误日志中,我正在收到此消息

 Could not open log file 'logs/ssl_access_log.2014-05-30.log' (No such file or directory) piped log program '/usr/sbin/rotatelogs logs/ssl_access_log.%Y-%m-%d.log 60' failed unexpectedly 

rotatelogs需要一个完整的path。

将ServerRoot预先设置为相对path(即不能以/driveletter:\开头的path)只会在Apache中发生,而外部程序(如rotatelogs)并不知道Apache的ServerRootvariables。