PHP获取IP的方法对比

来源:互联网 发布:东方财富软件打不开 编辑:程序博客网 时间:2024/05/17 05:05

PHP可以通过$_SERVER这个变量去获取用户的IP地址,但是,$_SERVER中可能包含好几个IP地址的变量,那应该怎么获取IP才比较合适呢?

变量名     说明REMOTE_ADDR官方的英文说明是:“The IP address from which the user is viewing the current page.”,其含义为访问网页的用户IP,该IP反映的是用户的真实IP,即与服务器进行“握手”的IP,不能被伪造,如果用户采用了代理,则显示的是代理的IP。HTTP_CLIENT_IP通过HTTP请求协议的“Client-IP”发送,该IP可以被伪造,而且 并未成为http协议的标准,并不是所有服务器都能实现,其含义是用户的真实IP,由代理服务器发送HTTP_X_FORWARDED_FOR通过HTTP请求协议的“X-Forwarded-For”发送,该IP可以被伪造,X-Forwarded-For:简称XFF头,它代表客户端,也就是HTTP的请求端真实的IP,只有在通过了HTTP 代理或者负载均衡服务器时才会添加该项。它不是RFC中定义的标准请求头信息,在squid缓存代理服务器开发文档中可以找到该项的详细介绍。标准格式如下:X-Forwarded-For: client1, proxy1, proxy2。  

0 0
原创粉丝点击