php到底怎么获取IP地址,为什么三种方法获取的IP都不一样?

2025-03-13 13:34:26
推荐回答(3个)
回答1:

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); 
}

回答2:

你不要跟我说你在本地测试的环境想获取到访问客户的的外网IP耶。。。。

你把网站放到外网的服务器,然后访问外网的网站,才能获取得到你的外网IP。

回答3:

你电脑接了路由器,127.0.0.1是本地回环地址,网上测试那个是公网IP地址,本机做服务器,服务器地址就是127.0.0.1