获取代理ip地址

2017-10-08 17:20:38 jazdbmin1639整理 代理ip获取 代理ip获取

代理ip获取

Q1: php获取真实IP,区分代理IP

使用php获取IP的方法能找到很多。
function getIp(){
if (getenv("HTTP_CLIENT_IP") && strcasecmp(getenv("HTTP_CLIENT_IP"), "unknown"))
$ip = getenv("HTTP_CLIENT_IP");
else if (getenv("HTTP_X_FORWARDED_FOR") && strcasecmp(getenv("HTTP_X_FORWARDED_FOR"), "unknown"))
$ip = getenv("HTTP_X_FORWARDED_FOR");
else if (getenv("REMOTE_ADDR") && strcasecmp(getenv("REMOTE_ADDR"), "unknown"))
$ip = getenv("REMOTE_ADDR");
else if (isset($_SERVER['REMOTE_ADDR']) && $_SERVER['REMOTE_ADDR'] && strcasecmp($_SERVER['REMOTE_ADDR'], "unknown"))
$ip = $_SERVER['REMOTE_ADDR'];
else
$ip = "unknown";
return($ip);
}
对这段代码进行解释,这里用到了两个函数,getenv()和strcasecmp(),前一个函数获取得系统的环境变量,如果能取到值,则返回该值,不能则返回false.
$_SERVER是服务器超级全局变量数组,用$_SERVER['REMOTE_ADDR']同样可以获取到客户端的IP地址.二者的区别在于,getenv不支持IIS的isapi方式运行的php.
strcasecmp(string1,string2)字符串函数的用法是把string1和string2进行比较,如果相等返回0,如果string1大于string2,返回大于0的数,小于则返回小于0的数.
函数先使用客户IP,如果不成立尝试用代理的方法,如果不行,再使用REMOTE_ADDR。

Q2: 怎样查看自己的代理IP地址

去你的网卡设置中看看,一般情况下,你的网关就是你的代理服务器的IP地址,如果是自动获取的,在命令行中输入ipconfig /all,可以看到你的网关IP
回答不容易,希望能帮到您,满意请帮忙采纳一下,谢谢!

小提示:内容仅供参考,如果您需解决具体问题(尤其法律、医学等领域),建议您详细咨询相关领域专业人士。

代理ip获取 推荐文章:
推荐不满意?点这里  ››  

代理ip获取