首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > PHP >

php能否从外网获取用户的内网ip地址解决思路

2013-01-26 
php能否从外网获取用户的内网ip地址假设用户通过路由等设备连接上网,能不能通过php来获得访问用户的内网ip

php能否从外网获取用户的内网ip地址
假设用户通过路由等设备连接上网,能不能通过php来获得访问用户的内网ip,即198.xxx.xxx.xxx这样的ip。这里是指外网的用户访问,不是获取服务器主机所在的内网! ip
[解决办法]
有个函数   你可以试试看 


function getIP() { 

if (@$_SERVER["HTTP_X_FORWARDED_FOR"]) 
$ip = $_SERVER["HTTP_X_FORWARDED_FOR"]; 
else if (@$_SERVER["HTTP_CLIENT_IP"]) 
$ip = $_SERVER["HTTP_CLIENT_IP"]; 
else if (@$_SERVER["REMOTE_ADDR"]) 
$ip = $_SERVER["REMOTE_ADDR"]; 
else if (@getenv("HTTP_X_FORWARDED_FOR"))
$ip = getenv("HTTP_X_FORWARDED_FOR"); 
else if (@getenv("HTTP_CLIENT_IP")) 
$ip = getenv("HTTP_CLIENT_IP"); 
else if (@getenv("REMOTE_ADDR")) 
$ip = getenv("REMOTE_ADDR"); 
else 
$ip = "Unknown"; 
return $ip; 
}


[解决办法]
看一下tcp原理你就知道原因了.
[解决办法]
一般不可以(除非内网的出口网关被设置成了“透明网关”)

不过就算是知道了,又有什么意义呢?
你又不可能从服务器访问回去!

就好比有的人非要想知道用户上传的文件在用户机器上的位置一样
既然你不可能从外部访问到,知道了又有什么用呢?
[解决办法]
这个除了黑了对方主机一般没办法吧
[解决办法]
判断独立访客只能是通过cookie
[解决办法]
独立访客是cookies+时间去判断的。
会生成一个cookies到本地,然后要使用p3p了。
然后每一天的0时起,重新算一个uv

热点排行