ASP.NET/IIS,何时将 web.config 中的 <customHeaders> 添加到页面?
ASP.NET/IIS, When do <customHeaders> in the web.config get added to the page?
web.config 中的 customHeaders 在页面生命周期的什么时候添加到页面?一个 MSN 参考显示 headers 在请求到达页面处理程序之前被添加到响应中。
为什么 headers 的 none 被清除了,因为我可以看到 headers 在两个地方被清除了?
我可以在我们的一个页面模板中看到 OnInit 覆盖后面的代码:
Response.ClearHeaders();
Response.AppendHeader("Cache-Control", "no-store");
web.config
中的headers
<customHeaders>
<clear />
<add name="X-XSS-Protection"...etc
呈现的页面响应 headers 同时具有 "Cache-Control" 和 "X-XSS-Protection" 以及其他。由于 .NET 代码和 web.config 都清除了 headers,我希望其中一个清除另一个,但这并没有发生。
这是在经典模式下的 IIS 7.5 中,如果有区别的话。
自定义 headers 添加为 post-processing 的一部分,当 ASP.NET 完成生成响应时。因此,您的 ASP.NET 代码将无法删除 web.config.
中定义的自定义 headers
clear
元素清除自定义 headers 元素的配置——它不会从响应本身清除 headers。如果您继承了配置值(例如,如果 machine.config 中有一个 customHeaders 元素并且您希望在站点级别覆盖它),这是一种重置配置的方法。
web.config 中的 customHeaders 在页面生命周期的什么时候添加到页面?一个 MSN 参考显示 headers 在请求到达页面处理程序之前被添加到响应中。 为什么 headers 的 none 被清除了,因为我可以看到 headers 在两个地方被清除了?
我可以在我们的一个页面模板中看到 OnInit 覆盖后面的代码:
Response.ClearHeaders();
Response.AppendHeader("Cache-Control", "no-store");
web.config
中的headers<customHeaders>
<clear />
<add name="X-XSS-Protection"...etc
呈现的页面响应 headers 同时具有 "Cache-Control" 和 "X-XSS-Protection" 以及其他。由于 .NET 代码和 web.config 都清除了 headers,我希望其中一个清除另一个,但这并没有发生。
这是在经典模式下的 IIS 7.5 中,如果有区别的话。
自定义 headers 添加为 post-processing 的一部分,当 ASP.NET 完成生成响应时。因此,您的 ASP.NET 代码将无法删除 web.config.
中定义的自定义 headersclear
元素清除自定义 headers 元素的配置——它不会从响应本身清除 headers。如果您继承了配置值(例如,如果 machine.config 中有一个 customHeaders 元素并且您希望在站点级别覆盖它),这是一种重置配置的方法。