对于路由器,我想在服务器请求时从URI获取主机名。我知道我需要从$_SERVER
变量中读取它。但似乎在$_SERVER
数组中,主机名有多个条目(至少两个)。
请您告诉我应该选择哪个值 - 最可靠的值?
例如,当我有这样的URI时:
http://local.mvc/mycontroller/myaction
$_SERVER
数组将具有:
[HTTP_HOST] => local.mvc
[SERVER_NAME] => local.mvc
我需要获取值local.mvc
。
感谢您的时间。
答案 0 :(得分:0)
SERVER_NAME
是在其配置中分配给给定服务器的名称(即apache.conf
文件及其ServerName
指令或其他软件的类似名称),而HTTP_HOST
值来自客户端的headers of HTTP request(通常是Web浏览器)。如果您的服务器服务于多个域(如共享服务器/虚拟服务器托管),则这两个可能会有所不同。根据用例,您可能希望使用其中任何一种,但HTTP_HOST
似乎是更好的选择,因为它始终告诉用户想要达到的目的。
答案 1 :(得分:0)
$_SERVER
变量有'REQUEST_URI'
。
只是var_dump
服务器变量,应该在那里(或者查看documentation)
答案 2 :(得分:0)