我已经配置了 remoteip 并检查它是否确实已加载。remoteip.conf 也已加载。我通过在以下(正确)配置中引入格式错误的 IP 来检查后者:
RemoteIPHeader X-Forwarded-For
RemoteIPTrustedProxy 127.0.0.1 10.10.0.1 10.10.0.2
现在,当最终用户加载时,我可以验证是否看到了X-Forwarded-For
带有值的标头10.10.255.100这是正确的。但是REMOTE_ADDR
PHP 中的变量仍然是负载均衡器的 IP。
根据关于该主题的每一个教程,此时一切应该都可以正常进行。
答案1
RemoteIPTrustedProxy
当最终用户的 IP 位于“内部”网络时,这种方法似乎不起作用(在本例中10.20.255.100)。我不确定为什么 Apache 开发人员选择这种机制和策略的交织(在我看来这肯定是)。要接受内部网络 IP,请使用:
RemoteIPHeader X-Forwarded-For
RemoteIPInternalProxy 127.0.0.1 10.10.0.1 10.10.0.2