REMOTE_ADDR= 代理服务器 IPHTTP_X_FORWARDED_FOR= 没数值或不显示 使用这种代理时
一、如果没有使用代办代理处事器,
REMOTE_ADDR= 客户端IP HTTP_X_FORWARDED_FOR= 没数值或不显示
$ip = $_SERVER[‘REMOTE_ADDR‘];
二、使用透明代办代理,
REMOTE_ADDR= 最后一个代办代理处事器 IP
HTTP_X_FORWARDED_FOR= 客户端真实 IP (颠末多个代办代理处事器时,这个值类似:221.5.252.160, 203.98.182.163, 203.129.72.215)
这类代办代理还会将客户真实ip发送到请求东西,无法隐藏真实ip。
$ip = $_SERVER[‘HTTP_X_FORWARDED_FOR‘];
三、使用普通匿名代办代理处事器,
REMOTE_ADDR= 最后一个代办代理处事器 IP
HTTP_X_FORWARDED_FOR = 代办代理处事器 IP (颠末多个代办代理处事器时,这个值类似:203.98.182.163, 203.98.182.163, 203.129.72.215)
这样就隐藏了客户真个真实ip,,但处事器会知道客户端是通过代办代理处事器去访谒的。
四、使用欺骗性代办代理处事器,
REMOTE_ADDR= 代办代理处事器 IP
HTTP_X_FORWARDED_FOR= 随机的 IP(颠末多个代办代理处事器时,这个值类似:220.4.251.159, 203.98.182.163, 203.129.72.215)
处事器可以识别到时通过代办代理处事器访谒的,但发送给方针处事器的是虚假ip。
五、使用高匿名代办代理,
REMOTE_ADDR= 代办代理处事器 IP HTTP_X_FORWARDED_FOR= 没数值或不显示
使用这种代办代理时,差别浏览器差别设备会返回差此外ip头信息,因此PHP使用$_SERVER["REMOTE_ADDR"] 、$_SERVER["HTTP_X_FORWARDED_FOR"] 获取的值可能是空值也可能是“unknown”值。
PHP获取ip代码要领1: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; }
PHP获取ip代码要领2:function getip(){ $ip=false; if(!empty($_SERVER[‘HTTP_CLIENT_IP‘])){ $ip=$_SERVER[‘HTTP_CLIENT_IP‘]; } if(!empty($_SERVER[‘HTTP_X_FORWARDED_FOR‘])){ $ips=explode (‘, ‘, $_SERVER[‘HTTP_X_FORWARDED_FOR‘]); if($ip){ array_unshift($ips, $ip); $ip=FALSE; } for ($i=0; $i < count($ips); $i++){ if(!eregi (‘^(10│172.16│192.168).‘, $ips[$i])){ $ip=$ips[$i]; break; } } } return ($ip ? $ip : $_SERVER[‘REMOTE_ADDR‘]); }
按照ip获取归属地信息
温馨提示: 本文由Jm博客推荐,转载请保留链接: https://www.jmwww.net/file/web/30275.html
- 上一篇:其所控制的Pod的名字是随机设置的
- 下一篇:延时也会变得更多样