如何为 Apache 虚拟主机自定义 LogFormat



我真的需要一些帮助。我的服务器有多个虚拟主机,每个虚拟主机都有其访问日志,我需要能够为服务器上存在的每个虚拟主机自定义 LogFormat。我已经修改了 LogFormat httpd.conf但它实际上只影响主访问日志,而不影响虚拟主机。

这是我的日志格式:

<IfModule log_config_module>
LogFormat "%v:%a %l %u %t "%r" %>s %b "%{Referer}i" "%{User-Agent}i" %{CF-Connecting-IP}i" combinedvhost
LogFormat "%h %l %u %t "%r" %>s %b "%{Referer}i" "%{User-Agent}i" %{CF-Connecting-IP}i" combined
LogFormat "%h %l %u %t "%r" %>s %b %{CF-Connecting-IP}i" common
CustomLog "logs/access_log" combined
CustomLog logs/access_log combinedvhost
<IfModule logio_module>
LogFormat "%h %l %u %t "%r" %>s %b "%{Referer}i" "%{User-Agent}i" %{CF-Connecting-IP}i" combinedio
</IfModule>
</IfModule>
<IfModule mod_log_config.c>
LogFormat "%v:%a %l %u %t "%r" %>s %b "%{Referer}i" "%{User-Agent}i" %{CF-Connecting-IP}i" combinedvhost
LogFormat "%h %l %u %t "%r" %>s %b "%{Referer}i" "%{User-Agent}i" %{CF-Connecting-IP}i" combined
LogFormat "%h %l %u %t "%r" %>s %b %{CF-Connecting-IP}i" common
LogFormat "%{Referer}i -> %U" referer
LogFormat "%{User-agent}i" agent
CustomLog logs/access_log common
CustomLog logs/access_log combined
CustomLog logs/access_log combinedvhost
</IfModule>

上述 LogFormat 仅影响位于以下位置的主访问日志: /usr/local/apache/logs/access_log 但是,它不会影响服务器上访问日志位于以下位置的任何虚拟主机: /home/username/access-logs/domain.com

不确定我的日志格式本身是否有问题,或者我错过了什么。我花了很多时间试图解决这个问题,但没有找到解决方案。如果有人能对此有所了解,我将不胜感激。谢谢。

我面临同样的问题。我刚刚发现我阅读/编辑的文件是错误的。尝试搜索其他配置。在Xampp..extra/httpd-vhost.conf 中的配置

我找到了这个

##<VirtualHost *:80>
##    ServerAdmin webmaster@dummy-host.example.com
##    DocumentRoot "C:/app/htdocs/dummy-host.example.com"
##    ServerName dummy-host.example.com
##    ServerAlias www.dummy-host.example.com
##    ErrorLog "logs/dummy-host.example.com-error.log"
##    CustomLog "logs/dummy-host.example.com-access.log" common
##</VirtualHost> 

删除"#" ;尝试在虚拟主机配置中编辑。我相信你在主网站上编辑过..也许您可以共享与您的vhost相关的配置..

最新更新