IIS 10 Strict-Transport-Security 标头仅在通过 ARR 时才会加倍

问题描述 投票:0回答:1

带有 IIS 10 的 Windows Server 2016 Datacenter。对于我的 Web 应用程序,我通过

Strict-Transport-Security
文件启用了
web.config
,如下所示。

<httpProtocol>
  <customHeaders>
    <remove name="X-Powered-By" />
    <remove name="X-AspNet-Version" />
    <remove name="MicrosoftOfficeWebServer" />
    <remove name="MS-Author-Via" />
    <add name="Strict-Transport-Security" value="max-age=31536000; includeSubDomains" />
  </customHeaders>
</httpProtocol>

对于使用我的域名的网络流量,这效果很好。但我们有一个大的合作伙伴希望使用自己的域名。没问题 - 我使用 ARR 和 URL 重写将其域名映射到我们网站上的特定页面。需要 ARR,以便他们的域名与其 SSL 证书配合使用。除了标题之外,这也可以正常工作。由于某种原因,

Strict-Transport-Security
标题出现了两次。即使我直接使用重写的 URL,也不会发生这种情况;仅使用他们的域名。我认为问题出在 ARR 上。让我觉得这一点的是,正如您从上面的代码中看到的,我要删除的标头之一是
X-Powered-By
,但它的值也为
ARR/3.0
。但我找不到
Strict-Transport-Security
可能来自或定义的位置。我过去一天一直在寻找,但没有找到任何有意义的东西。欢迎任何建议!

iis-10 arr hsts strict-transport-security
1个回答
0
投票

HSTS 标头仅设置一次。显然第二个重复标头是由 ARR 添加的。

您可以使用 URL 重写规则来删除响应中的重复标头。

© www.soinside.com 2019 - 2024. All rights reserved.