`
womendu
  • 浏览: 1518069 次
  • 性别: Icon_minigender_2
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

PHP获得用户使用的代理服务器ip

PHP 
阅读更多
在PHP 中用 $_SERVER["REMOTE_ADDR"] 来取得客户端的 IP 地址
但如果客户端是使用代理服务器来访问
那取到的就是代理服务器的 IP 地址
要想透过代理服务器取得客户端的真实 IP 地址
就要使用 $_SERVER["HTTP_X_FORWARDED_FOR"] 来读取
但并不是每个代理服务器都能用 $_SERVER["HTTP_X_FORWARDED_FOR"] 来读取客户端的真实 IP
有些用此方法读取到的仍然是代理服务器的 IP
  1. functionget_userip()
  2. {
  3. if($_SERVER[HTTP_X_FORWARDED_FOR]=='')
  4. {
  5. if($_SERVER[HTTP_REMOTE_ADDR]=='')
  6. {
  7. $userip=$_SERVER[HTTP_CLIENT_IP];
  8. } else {
  9. $userip=$_SERVER[HTTP_REMOTE_ADDR];}
  10. }
  11. }
  12. else
  13. {
  14. $userip=$_SERVER[HTTP_X_FORWARDED_FOR];
  15. }
  16. return$userip;
  17. }

分享到:
评论

相关推荐

    PHP获得用户使用的代理服务器ip即真实ip

    来自 http://www.phpchina.com/bbs/thread-12239-1-1.html 在PHP 中用 $_SERVER[“REMOTE_ADDR”] 来取得客户端的 IP 地址 但如果客户端是使用代理服务器来访问 那取到的就是代理服务器的 IP 地址 要想透过...

    php取得用户IP地址类.zip

    2. `$_SERVER['HTTP_X_FORWARDED_FOR']`:当用户通过代理服务器或者负载均衡器访问时,这个头字段可能会包含用户的原始IP地址。但要注意,这个值可以被轻易伪造,因此在安全性要求高的场景下需谨慎使用。 3. `$_...

    PHP通过$_SERVER['REMOTE_ADDR']得到的是内网IP?如何才能获得客户的公网IP(真实IP地址).zip

    然而,如果用户访问你的网站经过了代理服务器或者负载均衡器,这个IP地址可能会被这些设备的IP替换,导致获取到的是内网IP或代理服务器的IP。 要获取用户的公网IP,有以下几种常见策略: 1. **检查HTTP头**:代理...

    PHP获取用户真实IP

    由于互联网的复杂性,用户的IP地址可能会被代理服务器、CDN服务、NAT转换等多层网络设备所遮蔽,因此获取到真实的IP地址并不总是一件简单的事情。本文将详细介绍如何在PHP中正确地获取用户的真实IP。 首先,PHP提供...

    php ip地址查询

    然而,由于代理服务器的存在,这个IP地址可能是代理服务器的,而非最终用户的。为了获取真实用户IP,可能还需要检查`HTTP_X_FORWARDED_FOR`等其他HTTP头。 接下来,我们讨论如何利用IP地址查询接口。许多服务提供商...

    PHP实现检测客户端是否使用代理服务器及其匿名级别

    要判断客户端是否使用代理服务器,可以从客户端所发送的环境变量信息来判断。 具体来说,就是看HTTP_VIA字段,如果这个字段设置了,说明客户端使用了代理服务器。 匿名级别可以参考下表来判断。 给出一个应用例子,...

    php 根据ip地址判断是那个国家

    - 在PHP中,可以使用`$_SERVER['REMOTE_ADDR']`获取客户端的IP地址,但要注意代理服务器的情况,可能需要检查`HTTP_X_FORWARDED_FOR`等其他头信息。 - IP地址通常为IPv4格式(如`192.168.1.1`),但也有可能是IPv6...

    php获取IP地址类库

    在PHP编程中,获取用户IP地址是一项常见的任务,特别是在处理用户数据、日志记录或地理位置服务时。"php获取IP地址类库" 提供了一种有效的方法来实现这一功能。这个类库专为PHP设计,旨在帮助开发者在用户访问网站时...

    PHPWind和Discuz论坛程序如何获取用户的真实IP地址

    如果使用了“匿名代理”,REMOTE_ADDR将显示代理服务器的IP。 HTTP_CLIENT_IP 是代理服务器发送的HTTP头。如果是“超级匿名代理”,则返回none值。同样,REMOTE_ADDR也会被替换为这个代理服务器的IP。

    麦地社区IP地址及服务器信息查询工具

    《麦地社区IP地址及服务器信息查询工具》是一款基于PHP编程语言开发的实用工具,它主要功能是查询和分析IP地址以及服务器的相关信息。这款工具利用了纯真IP数据库,可以方便用户快速获取到IP地址的地理位置等信息,...

    PHP+jQuery根据IP地址定位城市

    但需要注意,如果用户使用了代理服务器,此IP可能为代理服务器的IP,而非实际用户IP。这时,可以检查`$_SERVER['HTTP_X_FORWARDED_FOR']`,它包含了经过代理服务器转发的IP地址。 2. **调用API接口**:选择一个IP...

    PHPcurl模拟IP浏览器请求

    在IT行业中,PHP和cURL库常常被用来创建网络爬虫、API接口调用以及其他需要...此外,对于代理服务器的使用,务必确保其合法且安全,以防止潜在的安全风险。在进行此类操作时,始终要遵循相关的网络使用政策和法律法规。

    phpproxy-0.6

    使用PHPProxy可以实现一定程度的匿名浏览,因为用户的IP地址被代理服务器的IP地址所替代。然而,尽管这样增加了隐私,但并不能完全保证安全,因为所有流量都必须经过代理服务器,这意味着服务器可能会记录用户活动...

    Squid代理服务器原理

    2. **反向代理**:Squid可以作为反向代理服务器,隐藏内部服务器的IP地址。客户端请求首先到达Squid,然后由Squid转发到真实的Web服务器,再将响应返回给客户端,提高了服务器的安全性和负载均衡能力。 3. **负载...

    PHP获取IP地址 包含国家省份城市

    在PHP编程中,获取用户设备的IP地址是常见的需求,特别是在网站开发中,我们经常需要根据IP地址来识别用户的位置信息。本实例提供了一个通过新浪IP数据库查询IP地址并返回包含国家、省份、城市名称的解决方案。这个...

    PHP 显示客户端IP与服务器IP的代码

    需要注意的是,客户端IP地址在某些场景下可能并不是用户的真实IP地址,例如当用户通过代理服务器访问或者处于NAT环境中时,'REMOTE_ADDR'显示的将是代理服务器或者NAT设备的IP地址。 总结来说,$_SERVER['REMOTE_...

    php六种获取ip地址的方法

    1. 使用`getenv()`获取环境变量中的IP地址。 2. 如果环境变量无法获取,则使用`$HTTP_SERVER_VARS`数组中的`REMOTE_ADDR`。 ### 总结 以上介绍了六种在PHP中获取客户端或服务器IP地址的方法。在实际应用中,可以...

    php 通过客户端IP获取国家,省份,城市名称

    在PHP中,获取客户端IP地址的方法通常是使用`$_SERVER['REMOTE_ADDR']`全局变量,但这可能在经过代理服务器时产生问题。因此,有时我们需要检查其他如`$_SERVER['HTTP_X_FORWARDED_FOR']`等变量来获取真实IP。 描述...

    php 获取IP地址

    3. **隐私保护**:在收集和使用用户IP地址时,必须遵守相关的法律法规,并明确告知用户数据收集的目的及范围。 #### 四、示例代码的应用场景 - **访问统计**:可以用来统计网站的访问量,了解用户访问的地理位置...

    PHP 获取客户端IP

    在PHP编程中,获取客户端IP地址是一项常见的任务,这通常涉及到网络通信和用户跟踪。客户端IP地址可以帮助我们识别用户的位置,记录访问日志,或者在需要时实施IP限制策略。以下是一些关于如何在PHP中获取客户端IP的...

Global site tag (gtag.js) - Google Analytics