Apache2.4 如何从访问日志中删除 200 代码

Apache2.4 如何从访问日志中删除 200 代码

我正在结合使用 access.log 进行登录。这是我的 apache2.conf 中有关日志的部分

CustomLog ${APACHE_LOG_DIR}/access.log combined
LogFormat "%!200h %!200l %!200u %!200t \"%!200r\" %!200>s %!200O \"%!200{Referer}i\" \"%!200{User-Agent}i\"" combined

我添加了 !200 以防止记录所有 200 个代码,但它不起作用。它仍然记录 - - - - “-” - - “-” “-”

任何想法如何阻止 apache 记录 OK 200 但记录其他所有内容。

我尝试进行了很多次谷歌搜索,但我唯一能找到的东西是在官方 Apache 页面上。

https://httpd.apache.org/docs/2.4/en/logs.html

答案1

经过谷歌搜索后,我发现您可以在声明自定义日志时将其添加到行末尾。

"expr=%{REQUEST_STATUS} > 200"

如果状态高于 200,则会记录

您可以根据您的需要进行自定义。

"expr=%{REQUEST_STATUS} >= 400"

我的最终配置是:

CustomLog ${APACHE_LOG_DIR}/access.log combined "expr=%{REQUEST_STATUS} > 200"
LogFormat "%h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" combined

答案在这里:防止在 Apache httpd 中记录 400 错误

相关内容