PHP怎么获取访问者真实IP
发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,本篇内容主要讲解"PHP怎么获取访问者真实IP",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"PHP怎么获取访问者真实IP"吧!在没有开代理服务器的情况下,
千家信息网最后更新 2026年11月02日PHP怎么获取访问者真实IP
本篇内容主要讲解"PHP怎么获取访问者真实IP",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"PHP怎么获取访问者真实IP"吧!
在没有开代理服务器的情况下,直接使用:
$ip = $_SERVER["REMOTE_ADDR"];
如果客户端是使用代理服务器来访问,那取到的就是代理服务器的 IP 地址,而不是真正的客户端 IP 地址 ,反之就是真实IP;
下面是通用的一种写法,都能获取到:
要想透过代理服务器取得客户端的真实 IP 地址,就要使用 getenv("HTTP_X_FORWARDED_FOR") 来读取。
但是如果客户端没有通过代理服务器来访问,那么用getenv("HTTP_X_FORWARDED_FOR") 取到的值将是空的。
function getIP(){ static $realip; if (isset($_SERVER)){ if (isset($_SERVER["HTTP_X_FORWARDED_FOR"])){ $realip = $_SERVER["HTTP_X_FORWARDED_FOR"]; } else if (isset($_SERVER["HTTP_CLIENT_IP"])) { $realip = $_SERVER["HTTP_CLIENT_IP"]; } else { $realip = $_SERVER["REMOTE_ADDR"]; } } else { if (getenv("HTTP_X_FORWARDED_FOR")){ $realip = getenv("HTTP_X_FORWARDED_FOR"); } else if (getenv("HTTP_CLIENT_IP")) { $realip = getenv("HTTP_CLIENT_IP"); } else { $realip = getenv("REMOTE_ADDR"); } } return $realip;}注意:
$_SERVER和getenv的区别,getenv不支持IIS的isapi方式运行的php
getenv("REMOTE_ADDR")函数在 apache下能正常获取ip地址,而在iis中没有作用,而$_SERVER['REMOTE_ADDR']函数,既可在apache中成功获取访客的ip地址,在iis下也同样有效
另外根据ip地址,可以实现类似限制IP访问的防刷机制;
php验证邮箱,代码如下:$email = 'fengdingbo@gmail.com'; $result = filter_var($email, FILTER_VALIDATE_EMAIL); var_dump($result); // string(20) "fengdingbo@gmail.com" php验证url地址,代码如下:$url = "https://www.jb51.net"; $result = filter_var($url, FILTER_VALIDATE_URL); var_dump($result); // string(25) "https://www.jb51.net" php验证ip地址,代码如下:$url = "192.168.1.110"; $result = filter_var($url, FILTER_VALIDATE_IP); var_dump($result); // string(13) "192.168.1.110" // 该方法也可以用来验证ipv6。 $url = "2001:DB8:2de::e13"; $result = filter_var($url, FILTER_VALIDATE_IP); var_dump($result); // string(17) "2001:DB8:2de::e13"public static function isEmail( $email ) { return preg_match("/^([a-z0-9]*[-_\.]?[a-z0-9]+)*@([a-z0-9]*[-_]?[a-z0-9]+)+[\.][a-z]{2,4}([\.][a-z]{2})?$/i" , $email ); } public static function isNumber( $num ) { return is_numeric( $num ); } public static function isUrl( $url , $preg = false ) { if( $preg ) { $status = preg_match ( "/^([^:\/\/])+\:\/\/[\w-]+\.[\w-.\?\/]+$/" , $url ); } else{ $status = filter_var( $url , FILTER_VALIDATE_URL ); } return $status; }到此,相信大家对"PHP怎么获取访问者真实IP"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
地址
方法
服务器
代理
服务
客户
验证
访问者
代码
客户端
内容
函数
就是
学习
实用
更深
有效
成功
作用
兴趣
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
互联网与科技金融数据
华宇互联网科技
万易互联网科技有限公司
互联网科技论文
丰台科技园 互联网
掌上梦互联网科技
互联网科技的未来发展
互联网科技英文翻译
镁科技互联网资讯平台
顺网科技2021年互联网排名
互联网科技公司招聘
互联网科技中介
福州新华互联网科技学校 知乎
汽车互联网创新科技园
重庆威客帮互联网科技
深圳市罗太互联网科技有限公司
保险科技服务互联网营销体系
互联网时代的科技公司
上海钢联属于互联网科技股吗
从那以后互联网科技有限公司
哈尔滨大商圈互联网科技有限公司
广州宏创互联网科技
时间互联网络科技
新华互联网科技校企合作
互联网和高科技公司
温州喔噻互联网科技有限公司
科技互联网大厂
移动互联网科技公司
高科技互联网套路
长沙易易互联网科技有限公司