Apache 访问日志出现了一个奇怪的问题。我收到了一个写入网站的条目
/var/log/apache2/access.log
和
/var/log/apache2/other_vhosts/access.log
我使用的是 Debian 6,其中 Apache 库是最新的。当我查看文件时
/etc/apache2/conf.d/other-vhosts-access-log
它说
# Define an access log for VirtualHosts that don't define their own logfile
CustomLog ${APACHE_LOG_DIR}/other_vhosts_access.log vhost_combined
但是当我查看该网站的 VirtualHost 声明时,它有
CustomLog ${APACHE_LOG_DIR}/access.log vhost_combined
</VirtualHost>
在文件底部。我已经声明了日志文件,那么为什么 apache 仍然向 other_vhosts_access.log 写入条目?
最后,我注释掉了 apache/conf.d 文件中的该行,但感觉这不是最好的方法。
我错过了什么?
答案1
如果不查看完整的 Apache 配置,这很难诊断,但需要注意以下几点
- 检查您是否没有在同一个虚拟主机中包含或定义第二个日志文件 - 这将导致双重日志记录。
- 检查日志文件是否相互链接 -
find /var/log/apache2 -samefile /var/log/apache2/access.log
如果是的话,将列出它们。
考虑一下这是一个错误的可能性。
答案2
尝试
CustomLog ${APACHE_LOG_DIR}/access.log 合并