在 PHP 中使用 Cloudflare 检索访问者 IP 地址
跟踪网站访问者时,记录他们的 IP 地址是一种常见做法。但是,利用 Cloudflare 进行缓存可能会带来问题,因为返回的 IP 地址可能是 Cloudflare 服务器的 IP 地址。本文探讨了一种在利用 Cloudflare 时检索实际访问者 IP 地址的方法。
Cloudflare 提供了有助于 IP 地址检索的其他服务器变量:
要使用这些变量,请实现以下代码:
if (isset($_SERVER["HTTP_CF_CONNECTING_IP"])) {
$_SERVER['REMOTE_ADDR'] = $_SERVER["HTTP_CF_CONNECTING_IP"];
}
此代码使用实际访问者 IP 地址更新 $_SERVER['REMOTE_ADDR'] 变量(如果可通过 Cloudflare 标头获得)。
需要注意的是,如果IP 地址至关重要,可能需要验证 $_SERVER["REMOTE_ADDR"] 值是否代表有效的 Cloudflare IP 地址。这是因为恶意行为者可能会操纵标头以直接连接到服务器 IP。
免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。
Copyright© 2022 湘ICP备2022001581号-3