PHP获取真实客户端的真实IP

发布时间 - 2026-01-11 00:02:38    点击率:

REMOTE_ADDR 是你的客户端跟你的服务器“握手”时候的IP。如果使用了“匿名代理”,REMOTE_ADDR将显示代理服务器的IP。

HTTP_CLIENT_IP 是代理服务器发送的HTTP头。如果是“超级匿名代理”,则返回none值。同样,REMOTE_ADDR也会被替换为这个代理服务器的IP。

$_SERVER['REMOTE_ADDR']; //访问端(有可能是用户,有可能是代理的)IP

$_SERVER['HTTP_CLIENT_IP']; //代理端的(有可能存在,可伪造)

$_SERVER['HTTP_X_FORWARDED_FOR']; //用户是在哪个IP使用的代理(有可能存在,也可以伪造)

三个值区别如下:

一、没有使用代理服务器的情况:

REMOTE_ADDR = 您的 IP

HTTP_VIA = 没数值或不显示

HTTP_X_FORWARDED_FOR = 没数值或不显示

二、使用透明代理服务器的情况:Transparent Proxies

REMOTE_ADDR = 最后一个代理服务器 IP

HTTP_VIA = 代理服务器 IP

HTTP_X_FORWARDED_FOR = 您的真实 IP ,经过多个代理服务器时,这个值类似如下:203.98.182.163, 203.98.182.163, 203.129.72.215。

这类代理服务器还是将您的信息转发给您的访问对象,无法达到隐藏真实身份的目的。

三、使用普通匿名代理服务器的情况:Anonymous Proxies

REMOTE_ADDR = 最后一个代理服务器 IP

HTTP_VIA = 代理服务器 IP

HTTP_X_FORWARDED_FOR = 代理服务器 IP ,经过多个代理服务器时,这个值类似如下:203.98.182.163, 203.98.182.163, 203.129.72.215。

隐藏了您的真实IP,但是向访问对象透露了您是使用代理服务器访问他们的。

四、使用欺骗性代理服务器的情况:Distorting Proxies

REMOTE_ADDR = 代理服务器 IP

HTTP_VIA = 代理服务器 IP

HTTP_X_FORWARDED_FOR = 随机的 IP ,经过多个代理服务器时,这个值类似如下:203.98.182.163, 203.98.182.163, 203.129.72.215。

告诉了访问对象您使用了代理服务器,但编造了一个虚假的随机IP代替您的真实IP欺骗它。

五、使用高匿名代理服务器的情况:High Anonymity Proxies (Elite proxies)

REMOTE_ADDR = 代理服务器 IP

HTTP_VIA = 没数值或不显示

HTTP_X_FORWARDED_FOR = 没数值或不显示 ,经过多个代理服务器时,这个值类似如下:203.98.182.163, 203.98.182.163, 203.129.72.215。

完全用代理服务器的信息替代了您的所有信息,就象您就是完全使用那台代理服务器直接访问对象。

//获取用户IP
$ip = '';
foreach (array('HTTP_CLIENT_IP', 'HTTP_X_FORWARDED_FOR', 'HTTP_FROM', 'REMOTE_ADDR') as $v) {
  if (isset($_SERVER[$v])) {
    if (! preg_match('/^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$/', $_SERVER[$v])) {
        continue;
  } 
     $ip = $_SERVER[$v];
  }
}
uset($ip,$v);

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持!


# php获取客户端真实ip  # php  # 获得客户端ip  # 获得客户端ip地址  # Java获取客户端真实IP地址过程解析  # Java面试之如何获取客户端真实IP  # PHP获取用户客户端真实IP的解决方案  # Java实现获取客户端真实IP方法小结  # JSP如何获取客户端真实IP地址  # PHP获取客户端真实IP地址的5种情况分析和实现代码  # php中获取远程客户端的真实ip地址的方法  # PHP 获取客户端真实IP地址多种方法小结  # php 获取客户端的真实ip  # 浅谈使用Java Web获取客户端真实IP的方法示例详解  # 代理服务器  # 您的  # 多个  # 有可能  # 或不  # 他们的  # 使用了  # 是在  # 也会  # 您是  # 这类  # 就象  # 您就  # 转发给  # 客户端  # HTTP_VIA  # Transparent  # HTTP_X_FORWARDED_FOR  # HTTP  # span 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: Midjourney怎么调整光影效果_Midjourney光影调整方法【指南】  南京网站制作费用,南京远驱官方网站?  laravel怎么配置和使用PHP-FPM来优化性能_laravel PHP-FPM配置与性能优化方法  Zeus浏览器网页版官网入口 宙斯浏览器官网在线通道  惠州网站建设制作推广,惠州市华视达文化传媒有限公司怎么样?  Laravel路由怎么定义_Laravel核心路由系统完全入门指南  Laravel如何与Pusher实现实时通信?(WebSocket示例)  如何快速上传自定义模板至建站之星?  Laravel怎么进行数据库回滚_Laravel Migration数据库版本控制与回滚操作  如何快速搭建自助建站会员专属系统?  html5如何设置样式_HTML5样式设置方法与CSS应用技巧【教程】  Windows家庭版如何开启组策略(gpedit.msc)?(安装方法)  宙斯浏览器文件分类查看教程 快速筛选视频文档与图片方法  香港服务器部署网站为何提示未备案?  PHP怎么接收前端传的文件路径_处理文件路径参数接收方法【汇总】  UC浏览器如何设置启动页 UC浏览器启动页设置方法  北京网站制作公司哪家好一点,北京租房网站有哪些?  Laravel如何与Docker(Sail)协同开发?(环境搭建教程)  Windows驱动无法加载错误解决方法_驱动签名验证失败处理步骤  开心动漫网站制作软件下载,十分开心动画为何停播?  青岛网站建设如何选择本地服务器?  Laravel事件和监听器如何实现_Laravel Events & Listeners解耦应用的实战教程  如何挑选高效建站主机与优质域名?  Laravel怎么进行浏览器测试_Laravel Dusk自动化浏览器测试入门  千库网官网入口推荐 千库网设计创意平台入口  品牌网站制作公司有哪些,买正品品牌一般去哪个网站买?  详解MySQL数据库的安装与密码配置  清除minerd进程的简单方法  html5怎么画眼睛_HT5用Canvas或SVG画眼球瞳孔加JS控制动态【绘制】  悟空识字如何进行跟读录音_悟空识字开启麦克风权限与录音  Win11怎么恢复误删照片_Win11数据恢复工具使用【推荐】  5种Android数据存储方式汇总  Laravel怎么判断请求类型_Laravel Request isMethod用法  javascript中的try catch异常捕获机制用法分析  Laravel怎么使用Blade模板引擎_Laravel模板继承与Component组件复用【手册】  Laravel怎么上传文件_Laravel图片上传及存储配置  Laravel Seeder填充数据教程_Laravel模型工厂Factory使用  厦门模型网站设计制作公司,厦门航空飞机模型掉色怎么办?  Laravel如何创建和注册中间件_Laravel中间件编写与应用流程  jquery插件bootstrapValidator表单验证详解  Laravel如何实现API资源集合?(Resource Collection教程)  Laravel怎么使用Session存储数据_Laravel会话管理与自定义驱动配置【详解】  如何用虚拟主机快速搭建网站?详细步骤解析  zabbix利用python脚本发送报警邮件的方法  HTML透明颜色代码怎么让下拉菜单透明_下拉菜单透明背景指南【技巧】  Laravel中DTO是什么概念_在Laravel项目中使用数据传输对象(DTO)  如何在沈阳梯子盘古建站优化SEO排名与功能模块?  韩国网站服务器搭建指南:VPS选购、域名解析与DNS配置推荐  Win11关机界面怎么改_Win11自定义关机画面设置【工具】  北京网站制作的公司有哪些,北京白云观官方网站?