首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >$_SERVER变量:$_SERVER['HTTP_HOST'] vs $_SERVER['SERVER_NAME']

$_SERVER变量:$_SERVER['HTTP_HOST'] vs $_SERVER['SERVER_NAME']
EN

Stack Overflow用户
提问于 2012-12-08 00:00:15
回答 2查看 71.3K关注 0票数 23

可能重复: 名字

$_SERVER['HTTP_HOST']$_SERVER['SERVER_NAME']有什么区别?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-12-08 00:24:43

$_SERVER['SERVER_NAME']给出了主机配置中定义的服务器名称的值(即Apache .conf文件)。

$_SERVER['HTTP_HOST']为您提供了实现当前请求的域名,并且更直接地与请求相关。

在大多数应用程序中,HTTP_HOST通常更有用,因为它与请求直接相关,而SERVER_NAME可以返回conf文件中的任何值,并且根本不告诉您有关请求的任何信息。

我将给出一个例子,说明HTTP_HOST可能与SERVER_NAME有何不同。假设您在Apache中定义了一个具有ServerName of example.com和IP地址1.2.3.4的主机。

让我们看看两个传入的请求URL,并显示这些变量之间的区别:

代码语言:javascript
运行
复制
http://www.example.com
HTTP_HOST = www.example.com
SERVER_NAME = example.com

http://1.2.3.4
HTTP_HOST = 1.2.3.4
SERVER_NAME = example.com

因此,HTTP_HOST更多地与请求绑定,而SERVER_NAME则由服务器配置决定。

票数 47
EN

Stack Overflow用户

发布于 2012-12-08 00:03:49

HTTP_HOST

主机的内容:来自当前请求的标题(如果有)。

SERVER_NAME

正在执行当前脚本的服务器主机的名称。如果脚本在虚拟主机上运行,这将是为该虚拟主机定义的值。

http://php.net/manual/en/reserved.variables.server.php

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13772934

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档