php获取ip的常用方法都是什么意思?
问题一:
获取ip的常用方法是用$_SERVER数组的“HTTP_CLIENT_IP”、“HTTP_X_FORWARDED_FOR”、“REMOTE_ADDR”这三个元素来获取。
那这三个元素值都分别代表什么呢?
我在网上查的是:
HTTP_CLIENT_IP:代表客户端ip
HTTP_X_FORWARDED_FOR:通过代理上网的客户端ip
REMOTE_ADDR:连接ip
我的理解是:
(1)如果客户端是直接联网的:
HTTP_CLIENT_IP:显示客户端ip
HTTP_X_FORWARDED_FOR:没有
REMOTE_ADDR:显示客户端ip
(2)如果客户端是通过代理服务器的:
HTTP_CLIENT_IP:没有
HTTP_X_FORWARDED_FOR:显示客户端ip
REMOTE_ADDR:显示代理服务器ip
这么理解对吗?
问题二:
客户端的ip信息是通过header头发送过去的吧?那为什么用firefox查header头看不到相关的信息呢?
谢谢!
------解决方案--------------------
1,应该对吧,网上有一个经典的if语句,如果有需求可以拿来用,不过这只能识别君子,对小人无效。
2,HTTP_X_FORWARDED_FOR,这个应该有。其他两个REMOTE_ADDR和CLIENT_IP个人感觉是一样的东西,都是accept得到的IP,只不过是根据是否有HTTP_XFORWARDED_FOR做不同的解释而已。
------解决方案--------------------
只有 REMOTE_ADDR 反映的是用户真实的公网入口
其他的都是各种网络设备附加的内容,仅供参考
因为他们是可以随意构造的
0
0
相关文章
PHP中使用saveXML()输出XML时为何添加普通文本会报错?
php实时输出弹幕功能能做吗_php实时输出弹幕实现【技巧】
trae配置php与mysql连接不上_traephp连mysql配置法【步骤】
php实时输出页面跳转会断吗_php实时输出跳转保持【步骤】
kali怎么挖php漏洞_借助commix挖掘php命令执行洞【方法】
本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门AI工具
相关专题
C++ 设计模式与软件架构
本专题深入讲解 C++ 中的常见设计模式与架构优化,包括单例模式、工厂模式、观察者模式、策略模式、命令模式等,结合实际案例展示如何在 C++ 项目中应用这些模式提升代码可维护性与扩展性。通过案例分析,帮助开发者掌握 如何运用设计模式构建高质量的软件架构,提升系统的灵活性与可扩展性。
8
2026.01.30
热门下载
相关下载
精品课程
相关推荐
/
热门推荐
/
最新课程
【web前端】Node.js快速入门
共16课时 | 2万人学习
Mock.js | Axios.js | Json | Ajax--十天精品课堂
共7课时 | 0.6万人学习
nginx浅谈
共15课时 | 0.8万人学习
最新文章









