我在一个网站上工作,我想做的一件事就是向用户显示我的IP地址。该网站是用CodeIgniter制作的,所以我希望找到我的服务器IP与PHP。IP地址可能会改变(它是一个漫游者),所以我想动态地找到它,而不仅仅是硬编码它。我试过这个:
$data['hostname'] = NULL;
$data['ip'] = NULL;
$var = gethostname();
if ($var === FALSE) {
$var = NULL;
} else {
$data['hostname'] = $var;
$data['ip'] = gethostbyname($var);
}
但是,我得到的不是主机名和IP,而是"Moria“和"127.0.1.1”。和我要找的不太一样。相反,它应该为主机名和IP地址指定"Moria.student.rit.edu“。有什么帮助吗?
发布于 2010-12-12 13:03:09
试试$_SERVER['SERVER_ADDR']
。它将是服务器正在侦听的IP地址。您可以使用DNS函数(例如,gethostbyaddr()
)来获取主机名。
参见http://www.php.net/manual/en/reserved.variables.server.php。
发布于 2019-10-22 21:00:43
对于服务器ip地址$_ server 'SERVER_ADDR';
对于服务器端口$_ server 'SERVER_ port ';
发布于 2015-11-12 21:01:01
如果您的laravel应用程序在内部服务器上运行,您可以使用以下命令来获取服务器的外部地址:
$external_ip = exec('curl http://ipecho.net/plain; echo');
https://stackoverflow.com/questions/4420468
复制相似问题