2
我正在开发一个地理位置的wordpress插件。HTTP_CLIENT_IP不工作,REMOTE_ADDR正在工作,为什么?
这是我的好奇心问题。为什么HTTP_CLIENT_IP没有显示任何内容? REMOTE_ADDR显示我的IP。
<?php
$ip = $_SERVER['HTTP_CLIENT_IP'];
echo $ip;
?>
我正在开发一个地理位置的wordpress插件。HTTP_CLIENT_IP不工作,REMOTE_ADDR正在工作,为什么?
这是我的好奇心问题。为什么HTTP_CLIENT_IP没有显示任何内容? REMOTE_ADDR显示我的IP。
<?php
$ip = $_SERVER['HTTP_CLIENT_IP'];
echo $ip;
?>
HTTP_CLIENT_IP
从共享上网 但REMOTE_ADDR
IP是当前IP
对于实例功能上的PHP:
function getRealIpAddr()
{
if (!empty($_SERVER['HTTP_CLIENT_IP'])) //check ip from share internet
{
$ip=$_SERVER['HTTP_CLIENT_IP'];
}
elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) //to check ip is pass from proxy
{
$ip=$_SERVER['HTTP_X_FORWARDED_FOR'];
}
else
{
$ip=$_SERVER['REMOTE_ADDR'];
}
return $ip;
}
为什么不'$ _ SERVER [ 'REMOTE_ADDR']'?在哪些情况下有人会使用另外两个? – JedatKinports
如果您信任REMOTE_ADDR上的标头,那么[伪造IP](http://stackoverflow.com/a/5092951/2205532)真的很容易;这通常是安全的。 – Think