PHP:获取真实的IP地址

时间:2015-03-21 13:49:17

标签: php ip

我试图在PHP中获取我的真实IP地址,无论是在本地主机还是在服务器中。 我不想要网站服务器的IP地址,例如localhost或127.0.0.1,但是我的机器的IP地址,例如在网上看到的(例如icanhazip.com显示的那个)。 我找到的唯一解决方案是获取icanhazip.com等网站显示的IP。有没有更好的解决方案?

谢谢!

2 个答案:

答案 0 :(得分:1)

我没有你的环境,但你可以试试:

$host = gethostname();
$ip   = gethostbyname($host);

在PHP 5.3及更高版本中。让我们知道会发生什么,它可能不起作用。

另一种方法是使用您拥有的另一台服务器,并询问您的IP地址是什么。

或者您可以在域上执行traceroute(在linux上)并从那里开始工作:

exec('traceroute example.com 2>&1', $out, $code);
if ($code) die("Error: ".join("\n", $out);
print_r($out);

我确定还有其他方法。

答案 1 :(得分:1)

php喜欢你家里的一只狗,它不知道哪个城市(ip)的房子。所以,你必须依靠第三方网站来识别你的IP地址。