2017-02-10 175 views
0

在頁面生命週期的哪一點,web.config中的customHeaders會被添加到頁面中?一個MSN參考資料顯示,在請求到達頁面處理程序之前,會將頭添加到響應中。 爲什麼沒有標題被清除,因爲我可以看到標題在2個地方被清除了? Response.ClearHeaders(); Response.AppendHeader("Cache-Control", "no-store");ASP.NET/IIS,何時將web.config中的<customHeaders>添加到頁面中?

在web.config

<customHeaders> 
    <clear /> 
    <add name="X-XSS-Protection"...etc 

呈現的頁面響應頭兼得「的Cache-Control標頭:

我可以在我們的頁面模板在OnInit重寫代碼後面一見「和」X-XSS-Protection「以及其他。由於.NET代碼和web.config都清除了頭文件,我希望能清除其他文件,但這並未發生。

這是在經典模式下的IIS 7.5,如果這有所作爲。

回答

1

自定義標頭是作爲後處理的一部分添加的,當ASP.NET生成響應時。因此,您的ASP.NET代碼將無法刪除web.config中定義的自定義標頭。

clear元素清除自定義標題元素的配置 - 它不會從響應本身清除標題。如果您有繼承的配置值(例如,如果machine.config中存在customHeaders元素,並且您希望在網站級別覆蓋它),則它是重置配置的一種方式。