当前位置: 首页 > 面试题库 >

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

朱天逸
2023-03-14
问题内容

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

但是,我正在使用CloudFlare进行缓存等,并以CloudFlare的方式接收其IP地址:

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。



 类似资料:
  • 本文向大家介绍php获取访问者IP地址汇总,包括了php获取访问者IP地址汇总的使用技巧和注意事项,需要的朋友参考一下 //方法1: //方法2: //方法3: //方法4: //方法5: //方法6: 以上所述就是本文的全部内容了,希望对大家学习php能够有所帮助。

  • 我是的新手,虽然我阅读了基本文档,并尝试部署一个简单的Spring BootAPI,但我可能缺少很多东西 我已经将API部署为.jar文件,然后安装并使用以下命令推送它: 然后使用docker命令启动API: 当我访问localhost:7777/hello时,我得到了所需的响应 这是我的 根据这个应答的命令,发布这个命令以获取 因此,我使用运行它,得到了这个错误 如果我设法获得,我是否能够访问它

  • 本文向大家介绍通过PHP实现获取访问用户IP,包括了通过PHP实现获取访问用户IP的使用技巧和注意事项,需要的朋友参考一下 在php中自带了一个非常的简单的获取IP地址的全局变量,很多初学都获取IP都使用它了,但是对于这些我们一般用法是满足了,但是对于要求高精度这个函数还是不行的。 这个是最简单的方法,对于开了透明代理之类的是没有办法的,如果内网访问也不能读取正确的外网IP,不过很省力就是了: $

  • 这是我的docker-compose.yml代码: 下面是我的traefik.toml代码:

  • 我对许多AJAX调用运行安全检查,以查看是否有记录在案的相同IP请求。 我使用了以下一组类函数来建立IP(可以通过负载平衡器来实现,因此采用了纵向方法)。 问题是,我的用户通过代理进行操作时遇到了问题。有人能说明原因吗?我已经使用基本免费代理的在线尝试和模拟,但它似乎没有得到可变IP或任何东西-所以我不知道为什么这会说这两个IP不匹配。

  • 问题内容: 我在Mac OS X上使用自制软件设置了jenkins,它 可以通过主机正常工作,或者无法通过主机名/ ipaddress访问jenkins实例: 即使从本地计算机(詹金斯主机本身)也无法访问这两个链接。同时执行命令并正常工作。 问题答案: 事实证明,启动代理配置为仅侦听127.0.0.1(或localhost)。要修复该詹金斯经纪人的plist: 并修改为而不是