172.8.5. Obtaining X-Forwarded-For header with HttpServletRequest.getRemoteAddr()
如果 HTTP 请求由 Apache 服务器处理,并转发到带有 mod_proxy 的 jetty,则原始客户端 IP 地址位于 X-Forwarded-For 标头中,HttpServletRequest.getRemoteAddr ()将返回 Apache 代理的地址。
Jetty 具有 forward 属性,它取来自 X-Forwarded-For 的值,并将其放置在 HttpServletRequest remoteAddr 属性中。 此属性不能通过端点配置直接可用,但可以使用 socketConnectors 属性轻松添加:
这在现有 Apache 服务器处理域的 TLS 连接并将其在内部代理到应用程序服务器时特别有用。