Apache Load Balancer(代理)服务器背后的真实 IP

Real IP behind Apache Load Balancer (Proxy) Server

我需要将访问者的真实ip转发给Apache Load Balancer。我通过添加以下两行在 Nginx 上成功地完成了它:

proxy_set_header    X-Real-IP        $remote_addr;
proxy_set_header    X-Forwarded-For  $proxy_add_x_forwarded_for

我也在解释 Apache 和 Nginx 解决方案的网站上找到了上述解决方案(适用于 Nginx),但它不适用于 Apache。通常,Apache 服务器作为后端服务器共享解决方案。 但是,就我而言,Apache 是负载平衡器。我也试过 mod_rpaf 但不是没用就是我无法成功应用它。

当以 reverse-proxy 模式运行时(例如,使用 ProxyPass 指令),mod_proxy_http 添加多个请求 header 以将信息传递到源服务器。这些 header 是:

X-Forwarded-For 客户端的 IP 地址。 X-Forwarded-Host 客户端在 Host HTTP 请求中请求的原始主机 header。 X-Forwarded-Server 代理服务器的主机名。

https://httpd.apache.org/docs/2.4/mod/mod_proxy.html#x-headers