15

我对这两个服务器变量之间的区别感到困惑。检查 IIS 文档,它指出:-

HTTP_HOST

返回 Web 服务器的名称。这可能与 SERVER_NAME 相同也可能不同,具体取决于您在 Web 服务器上使用的名称解析类型(IP 地址、主机标头)。

服务器名称

服务器的主机名、DNS 别名或 IP 地址,它们将出现在自引用 URL 中。

有人可以提供一些例子,他们可以如何不同?

我们的网络场中有 2 台 IIS 网络服务器……每个服务器都有 2 个网站(当然,每台服务器相同)。

每个网站都有大约 5 个左右的绑定。

那么..价值是什么?有什么不同?

4

3 回答 3

2

刚刚发现在 IIS 托管的 aspx 页面之一中启用跟踪,SERVER_NAME 仅返回服务器名称,而 HTTP_HOST 返回服务器名称:该站点运行的端口。启用跟踪集

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="WebApplication3.WebForm1" Trace="true" %>

注意 Trace 值

于 2011-05-23T09:20:30.823 回答
1

我不了解 ASP.NET,但在 PHP 中,$_SERVER['HTTP_HOST']客户端在 HTTPHost标头中发送的$_SERVER['SERVER_NAME']内容是由 Web 服务器配置决定的。

于 2011-05-23T08:37:20.757 回答
0

HTTP_HOST 是 HTTP 主机标头,可以通过 DNS(添加域并指向您的服务器)或仅通过计算机上的 HOSTS 文件进行更改。

Windows 上的 SERVER_NAME 是机器名称。您可以通过右键单击My Computer(或 Win10+ 上的计算机)和属性查看名称(或更改它)。

于 2016-09-09T07:43:14.320 回答