Apache下https获取真实ip的方法(Proxy Protocol 协议)

原始链接: http://www.qyh.name/681/apache下https获取真实ip的方法(proxy-protocol-协议)/

很多时候,因为业务需要,安全需要,负载均衡等等情况下,内部的服务使用的是反代的原理,并不直接暴露在公网上供人使用,服务所在服务器没有公网ip,或者不直接提供公网ip,frp是一个可以实现反代的工具,根据官方教程说明,http协议下,有X-Forwarded-For的方式获取真实ip,简单对后端的apache配置即可拿到真实ip,但是在https等方式下,就不能直接拿到真实ip,根据手册说明https://gofrp.org/docs/features/common/realip/,我们可以利用Proxy Protocol 协议获取,需要配合使用mod_remoteip模块,然后在vhost里增加:

RemoteIPProxyProtocol On

即可。

具体详细文档可以参考:https://httpd.apache.org/docs/2.4/mod/mod_remoteip.html#remoteipproxyprotocol

另外请注意,RemoteIPProxyProtocol 仅在(apache)httpd 2.4.31及以上版本可用。