PHP $_SERVER['SERVER_ADDR']取不到真正服务器IP


我的环境是这样的,LVS+2台WEB服务器,通过$_SERVER['SERVER_ADDR']取的时候,得到的是LVS这台机器的IP,并不是真正WEB服务器IP,请教有什么办法取到真实服务器IP

php 负载均衡

辛いお菓子 12 years, 5 months ago

在内网里面只能显示到自己的局域网IP的。但是如果放到真实环境上的话,是可以记录到你的外网IP 。如果想在内网得到自己的外网IP 的话,可以 使用以下代码。

   
  <?php
  
while(true)
{
$ch = curl_init('http://www.ip138.com/ip2city.asp');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$a = curl_exec($ch);
preg_match('/\[(.*)\]/', $a, $ip);
echo '您现在的IP是: ' , $ip[1] , "\n";
}
?>

YD的吴聊帝 answered 12 years, 5 months ago

Your Answer