【问题标题】:Where do the IIS server variables SERVER_NAME and HTTP_HOST come from?IIS 服务器变量 SERVER_NAME 和 HTTP_HOST 来自哪里?
【发布时间】:2014-07-16 00:27:42
【问题描述】:

我们的 ASP.NET 应用程序在客户安装时无法运行,因为 ServerVariables["SERVER_NAME"] 和 ServerVariables["HTTP_HOST"] 返回字符串“Arcplan”。

我们在服务器上构建的 URL 不正确(我们使用 Request.Url.Authority,它似乎在内部使用这些 ServerVariables)。

存储在 ServerVariables 中的值“Arcplan”与服务器或网站的名称或我能找到的任何内容都不对应。可能电脑改名了,以前叫Arcplan?

有谁知道 IIS 从哪里获取这些值?它们是否存储在某个配置文件中?

【问题讨论】:

    标签: asp.net http iis iis-7.5


    【解决方案1】:

    检查你的 URL Rewrite 配置模块是否已经设置了那个东西。

    点击此链接了解更多信息:setting-http-request-headers-and-iis-server-variables

    【讨论】:

    • 未安装 URL 重写模块
    • 理想情况下,HTTP_HOST 是 Web 服务器的名称。这可能与 SERVER_NAME 相同也可能不同,具体取决于您在 Web 服务器上使用的名称解析类型(IP 地址、主机标头)。 SERVER_NAME 是服务器的主机名、DNS 别名或 IP 地址,因为它会出现在自引用 URL 中。
    • "服务器的主机名" - 这是哪里?计算机名称的值与 SERVER_NAME IIS 变量给出的值不同。
    • 能否提供一些环境设置细节?您是否也在 IIS 前使用任何 Apache 服务器?通过,SERVER_NAME,它将是与服务器 IP@ 或服务器配置文件的 DNS 映射,这是最有可能设置此变量的区域。
    • 没有阿帕奇。 IIS 7.5 在 Windows 7 上运行。我不知道在哪里查找服务器配置文件 - 这是客户安装。我们现在更改了代码以避免这个问题。我们使用它为服务器上的静态图像构建绝对 URL,但现在将构建相对 url。希望这将更加强大。非常感谢您的宝贵时间。
    猜你喜欢
    • 2023-04-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-07-05
    • 2010-09-21
    • 2015-04-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多