Apache 日志 - X-Forwarded-for 与 Virtualhost 一起不记录日志

Apache 日志 - X-Forwarded-for 与 Virtualhost 一起不记录日志

我正在使用 Apache/2.4.27

在 VirtualHost 中,我使用以下命令从负载均衡器转发远程客户端 IP 标头:

RemoteIPHeader X-Forwarded-For

该虚拟主机提供的应用程序需要它。

这是主 httpd.conf 上下文中的日志格式。

LogFormat "%h (%{X-Forwarded-For}i) %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined

当我RemoteIPHeader X-Forwarded-For在虚拟主机中列出这些内容时,Apache 停止将远程客户端 IP 写入日志。

当我从 VirtualHost 中删除它时,远程客户端 IP 开始再次出现在日志中。

有任何想法吗 ?

谢谢 !

答案1

如果您要使用 mod_remoteip,请将 %a 恢复为该格式。

在 bugzilla 中,mod_remoteip 填充 %a,同时从 %{X-Forwarded-For}i 中删除。因此,在具有一个受信任代理的简单情况下,%a 将保存用于在 X-Forwarded-For 中看到的值,因为 mod_remoteip

相关内容