remote_addr是IP时,你的客户握手
服务器。如果一个匿名
代理使用,remote_addr将
显示代理服务器的IP。
http_client_ip由代理服务器发送的HTTP头。如果它是一个超级匿名代理,无返回值。以同样的方式,remote_addr将由代理服务器IP更换。
_server美元{ 'remote_addr}; / /接入终端(有可能是
用户,有可能是IP代理)
_server美元{ 'http_client_ip}; / /代理(可能伪造)
_server美元{ 'http_x_forwarded_for}; / /在用户正在使用的IP代理(可能存在,可以锻造)
这三个值之间的差异如下:
首先,没有代理服务器的使用。
remote_addr =你的IP
http_via =没有价值或没有显示
http_x_forwarded_for =没有价值或没有显示
两。使用透明代理服务器的
情况:透明代理
remote_addr =最后的代理服务器IP
http_via =代理服务器IP
http_x_forwarded_for =你的真实IP,通过多个代理服务器,这个值是类似于以下内容:203.98.182.163,203.98.182.163,203.129.72.215。
这种代理服务器也将您的信息转发给您的访问对象,无法达到隐藏真实身份的目的。
三。使用普通匿名代理服务器的情况:匿名代理
remote_addr =最后的代理服务器IP
http_via =代理服务器IP
http_x_forwarded_for =代理服务器IP。经过多个代理服务器,这个值是类似于以下内容:203.98.182.163,203.98.182.163,203.129.72.215。
您的真实IP是隐藏的,但它是通过代理服务器访问访问对象的。
四。使用欺骗性代理服务器:篡改代理
remote_addr =代理服务器IP
http_via =代理服务器IP
http_x_forwarded_for =随机IP,经过多个代理服务器,这个值是类似于以下内容:203.98.182.163,203.98.182.163,203.129.72.215。
告诉访问对象您使用代理服务器,但
创建一个假随机IP来欺骗它,而不是真正的IP。
五。使用高匿名代理服务器的情况:高匿名代理(精英代理)
remote_addr =代理服务器IP
http_via =没有价值或没有显示
http_x_forwarded_for =没有价值或没有显示。当通过多个代理服务器,该值是类似于以下内容:203.98.182.163,203.98.182.163,203.129.72.215。
代理服务器的信息完全
替换为代理服务器的信息,就像直接使用代理服务器直接访问对象一样。
获取用户IP
$ =;
foreach(数组('http_client_ip ','http_x_forwarded_for ','http_from ','remote_addr)达v){
如果(isset($ _server { $ V })){
如果(!preg_match( / ^ 3 D { } { }。 D 1 3 D { } { }。 D 1美元/美元美元,_server {五})){
继续;
}
美元美元美元_server IP = {五};
}
}
用户(IP美元,$ V);
以上是本文的全部内容,希望本文的内容能给大家的
学习或
工作带来一定的帮助,同时也希望能给予更多的
支持!