gpt4 book ai didi

php - CloudFlare 并通过 PHP 记录访问者 IP 地址

转载 作者:可可西里 更新时间:2023-10-31 23:21:24 24 4
gpt4 key购买 nike

我正在尝试使用 PHP 的 $_SERVER['REMOTE_ADDR'] 来跟踪和记录访问我网站的用户/访问者。 PHP中IP地址跟踪的典型方法。

但是,我正在使用 CloudFlare 进行缓存等,并接收他们的 IP 地址作为 CloudFlare 的:

108.162.212.* - 108.162.239.*

在仍然使用 CloudFlare 的同时检索实际用户/访问者 IP 地址的正确方法是什么?

最佳答案

可用于云耀斑的额外服务器变量是:

$_SERVER["HTTP_CF_CONNECTING_IP"]真实访客ip地址,这就是你想要的

$_SERVER["HTTP_CF_IPCOUNTRY"] 访问者所在国家/地区

$_SERVER["HTTP_CF_RAY"]

$_SERVER["HTTP_CF_VISITOR"] 这可以帮助您了解它是 http 还是 https

你可以这样使用它:

if (isset($_SERVER["HTTP_CF_CONNECTING_IP"])) {
$_SERVER['REMOTE_ADDR'] = $_SERVER["HTTP_CF_CONNECTING_IP"];
}

如果您这样做,并且访问 IP 地址的有效性很重要,您可能需要验证 $_SERVER["REMOTE_ADDR"] 是否包含实际有效的 cloudflare IP 地址,因为任何人如果他能够直接连接到服务器 IP,则可以伪造 header 。

关于php - CloudFlare 并通过 PHP 记录访问者 IP 地址,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19510080/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com