首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何跟踪代理背后的真实IP地址

如何跟踪代理背后的真实IP地址
EN

Stack Overflow用户
提问于 2011-03-18 16:31:01
回答 3查看 27.2K关注 0票数 8

我们如何使用PHP追踪代理背后的真实IP地址?我的意思是,一个纯粹的PHP implementation.Because,当js打开时,他们可以关闭他们的browsers.BTW的JS,我可能使用HTML5地理定位,所以我不需要IP地址来定位用户。

EN

回答 3

Stack Overflow用户

发布于 2011-03-18 16:42:09

如果发送了X-Forwarded-For HTTP报头,您可以查看该报头,但是没有保证知道的方法。

票数 12
EN

Stack Overflow用户

发布于 2011-03-18 17:52:15

这段PHP代码可以工作,并且对于正向和反向代理非常有用。对于反向代理,请注意X_FORWARDED_FOR标头信息(如果可用)可能是伪造的,并且根本不应该被信任。

代码语言:javascript
复制
if($_SERVER["HTTP_X_FORWARDED_FOR"] != ""){
   $IP = $_SERVER["HTTP_X_FORWARDED_FOR"];
   $proxy = $_SERVER["REMOTE_ADDR"];
   $host = @gethostbyaddr($_SERVER["HTTP_X_FORWARDED_FOR"]);
}else{
   $IP = $_SERVER["REMOTE_ADDR"];
   $proxy = "No proxy detected";
   $host = @gethostbyaddr($_SERVER["REMOTE_ADDR"]);
}
票数 10
EN

Stack Overflow用户

发布于 2011-03-18 16:40:21

代理后的用户没有全局可路由的IP地址。如果您想要维护会话状态,最好使用您生成的会话密钥,并将其设置为cookie,或者将其保存在URL中(这种方法是有权衡的)。

如果你真的想知道他们的IP地址在他们自己的网络上是什么,你可以在页面中使用javascript找到它,然后把它发送回你的服务器。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5349604

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档