使用 PHP 中的 CloudFlare 检索访问者 IP 地址
通过 IP 地址跟踪用户活动是 Web 开发中的常见做法。然而,当使用CloudFlare进行缓存和其他服务时,通过PHP的$_SERVER['REMOTE_ADDR']记录的IP地址可能无法准确反映访问者的真实身份。 CloudFlare 的 IP 地址在 108.162.212. 到 108.162.239. 范围内,掩盖了实际访问者的 IP 地址。
为了解决此问题,CloudFlare 提供了几个额外的服务器变量来识别连接访客的 IP 地址:
要在使用 CloudFlare 时检索实际访问者的 IP 地址,您可以使用以下代码:
<code class="php">if (isset($_SERVER["HTTP_CF_CONNECTING_IP"])) { $_SERVER['REMOTE_ADDR'] = $_SERVER["HTTP_CF_CONNECTING_IP"]; }</code>
通过设置 $_SERVER[' REMOTE_ADDR'] 到 $_SERVER["HTTP_CF_CONNECTING_IP"] 的值,您可以确保 IP 地址日志正确识别您网站的访问者。
请注意,访问 IP 地址的有效性可能仍需要验证,因为任何人都可能欺骗标头信息。
以上是在 PHP 中使用 CloudFlare 时如何获取真实访问者 IP 地址?的详细内容。更多信息请关注PHP中文网其他相关文章!