Apache 日志记录不起作用

Iva*_*van 4 log-files logging apache-2.4

从 2.2.7 升级到 Apache 2.4.9 后,日志似乎无法正常工作。只有被记录的事情是 modsecurity 和 fcgid 事件,但没有来自 Apache 的类似文件未找到错误。检查 Apache error_log,特别是在重新启动后,我注意到了这一点:

[Sun Jul 13 05:16:10.482003 2014] [log_config:warn] [pid 30283:tid 140001085970176] (32)Broken pipe: [client 125.166.227.47:26260] AH00646: Error writing to |/usr/local/cpanel/bin/splitlogs --main=server.mysite.com --suffix=-bytes_log
[Sun Jul 13 05:16:10.482047 2014] [log_config:warn] [pid 30283:tid 140001085970176] (32)Broken pipe: [client 125.166.227.47:26260] AH00646: Error writing to |/usr/local/cpanel/bin/splitlogs --main=server.mysite.com --mainout=/usr/local/apache/logs/access_log
Run Code Online (Sandbox Code Playgroud)

我不知道“断管”是什么意思。我已启用管道日志记录(在升级 Apache 之前已启用)。尝试禁用它但得到了同样的东西并且没有记录任何内容。与旧的 conf 文件相比,在日志部分检查了 httpd.conf 文件,但似乎找不到任何不同:

<IfModule mod_log_config.c>
    LogFormat "%v:%p %h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combinedvhost
    LogFormat "%v %{%s}t %I .\n%v %{%s}t %O ." bytesvhost
    LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
    LogFormat "%h %l %u %t \"%r\" %>s %b" common
    LogFormat "%{Referer}i -> %U" referer
    LogFormat "%{User-agent}i" agent

    CustomLog "|/usr/local/cpanel/bin/splitlogs --main=server.mysite.com --suffix=-bytes_log" bytesvhost
    CustomLog "|/usr/local/cpanel/bin/splitlogs --main=server.mysite.com --mainout=/usr/local/apache/logs/access_log" combinedvhost

</IfModule>
Run Code Online (Sandbox Code Playgroud)

如果有人能对此有所了解,我将不胜感激。谢谢。

更新:通过将 access_log 和 error_log 的 perms 更改为 777,已消除损坏的文件错误。主要问题仍然存在,因为没有记录 Apache 相关的错误(404、403 等)。

Iva*_*van 9

好吧,我想我已经想通了!解决方法是在 httpd.conf 中更改以下指令:

LogLevel warn
Run Code Online (Sandbox Code Playgroud)

新值:

LogLevel info
Run Code Online (Sandbox Code Playgroud)

显然,Apache 2.4.9 中的一些错误日志的重要性已经改变,因此 404 等错误日志现在处于信息级别,如此处所述:http : //httpd.apache.org/docs/current/mod/core.html#loglevel