检索域名而不是IP

时间:2010-05-21 16:38:06

标签: php model-view-controller zend-framework apache2

所有

我使用以下命令检索服务器的域名。

$_SERVER['HTTP_HOST']

这似乎返回IP地址而不是像www.example.com这样的域名。我查看了PHPInfo,它还列出了HTTP_HOST的IP地址而不是域名。我需要更改什么才能显示域名而不是IP?

由于

4 个答案:

答案 0 :(得分:6)

改为使用$_SERVER['SERVER_NAME']

或者,您可以查看可用的每个服务器变量,但将此脚本放在此服务器上的一个PHP页面中。

<?PHP
foreach($_SERVER as $key_name => $key_value) {
  print $key_name . " = " . $key_value . "<br>";
}
?>

答案 1 :(得分:1)

$_SERVER['HTTP_HOST'](如果客户端发出HTTP / 1.0请求,则可能未定义)包含客户端请求的主机名。

如果客户请求http://127.0.0.1/,则其中包含127.0.0.1;对于http://localhost/,它将包含localhost;对于http://127.0.0.1:81/,它将包含127.0.0.1:81

答案 2 :(得分:1)

gethostbyaddr()可以检索IP地址的主机名,但前提是DNS记录已正确设置

答案 3 :(得分:0)

有用的链接: http://php.net/manual/en/reserved.variables.server.php 使用$ _SERVER [“SERVER_NAME”]