在我的應用程序中,我需要設置一個http響應頭。我想在web.config中執行此操作。是否可以在web.config中添加響應http頭文件?
回答
解決方案 最後,經過漫長的搜索,我找到了解決方案。與此代碼創建一個類:
public class myHTTPHeaderModule : IHttpModule
{
#region IHttpModule Members
public void Dispose()
{
}
public void Init(HttpApplication context)
{
context.EndRequest += new EventHandler(context_EndRequest);
}
void context_EndRequest(object sender, EventArgs e)
{
HttpResponse response = HttpContext.Current.Response;
response.AddHeader("Content-Language", "*");
}
#endregion
}
(不要問我爲什麼要使用這個事件,但它的工作原理。)
現在在的HttpModule節中增加一行在web.config中:
<httpModules>
<add type="namespace.myHTTPHeaderModule, assembly name" name="headers" />
<add name="ScriptModule" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
</httpModules>
就是這樣!
您可以隨時將一個項目添加到configuration.appSettings部分。
然後你的母版頁,自定義的基本頁面類,或一個特定的頁面可通過從web.config
閱讀設置這些HTTP報頭我不知道你能做到這一點在web.config中
到目前爲止,我所知道的最好的選擇,你必須是:
- 創建一個HttpModule,你設置的標頭的所有響應
- 添加頁眉上的IIS
在這裏你有MSDN上的參考:
此連結,這似乎是你所需要的
如何創建HTTPModule來設置標題? – Martijn 2010-05-28 07:41:04
添加您需要的信息 – 2010-05-28 12:46:58
沒有一個HttpModule的實現內置的功能,這樣做
喲你可以製作一個HttpModule
,它從web.config中讀取標題並將它們添加到響應中。
我該怎麼做? – Martijn 2010-05-28 07:40:39
執行此操作的最佳方法是web.config
文件的<customHeaders>
元素。請注意,這僅適用於IIS 7及更高版本。
配置以添加你的榜樣頭是:
<configuration>
<system.webServer>
<httpProtocol>
<customHeaders>
<add name="Content-Language" value="*" />
</customHeaders>
</httpProtocol>
</system.webServer>
</configuration>
欲瞭解更多信息,請參閱IIS "Custom Headers" Configuration Reference page
問題在於,它僅適用於IIS> = 7,如果你有IIS6,那你的運氣不好。 – 2014-12-10 12:44:00
我相信沒有一個答案這裏是全面的,所以這裏是我的:
請請參閱我的博客文章,瞭解如何添加自定義HTTP模塊以添加/刪除HTTP標頭here。雖然我試圖解決的問題是不同的,但我也需要添加/刪除HTTP標頭。博客帖子的要點如下:
要做到這一點的事件是HttpContext.PreSendRequestHeaders。您也可以從IIS設置或IIS的配置中執行此操作,如IIS Knowledge base所示。對於默認安裝,此配置文件(applicationHost.config)位於%WinDir%\ System32 \ Inetsrv \ Config \ applicationHost.config。
- 1. 是否有一個可以剝離HTTP響應頭的函數?
- 2. 重複的HTTP響應頭是否可以接受?
- 3. Rebol - HTTP響應頭文件
- 4. 是否可以在HTTP響應頭中使用本地化的字符串值?
- 5. 是否可以在每個HTTP響應中插入X-Frame-Options?
- 6. 是否可以在非HTTP-200響應中返回HTML標記?
- 7. 可以添加HTTP頭的工具
- 8. 在ASP .Net Core中的ExceptionFilterAttribute中添加響應頭文件
- 9. 如何在Flask-RESTful中添加自定義HTTP響應頭?
- 10. 是否可以在.yml文件中添加條件語句?
- 11. 是否可以在web.config文件中本地化appSettings信息?
- 12. 如何壓縮HTTP響應頭文件?
- 13. IIS動態HTTP響應頭文件
- 14. 處理HTTP響應的頭文件
- 15. 在IIS7管理器中的「HTTP Response Headers」模塊中添加自定義響應頭如果無法訪問web.config文件,可以使用嗎?
- 16. 在HTTP響應中使用「X -...」頭是否安全?
- 17. 是否可以在API網關上添加來自AWS Custom Auth的HTTP頭?
- 18. 在vbscript/classicasp中添加UTF-8文件 - 是否可以完成?
- 19. 是否可以在pom.xml文件中添加依賴項?
- 20. 是否可以將兩個頭文件添加到一個swift項目中?
- 21. 模塊在安裝時是否可以在DNN web.config中添加一行?
- 22. 是否可以在JFormattedTextField中添加ActionListener?
- 23. HTTP響應Accept頭
- 24. 如何在WSGI中間件中添加http頭文件?
- 25. 是否可以在Asp.net Web.config中添加多個內容安全策略指令?
- 26. 是否可以通過http標頭識別Android應用程序?
- 27. 正在覆蓋HTTP響應標題。哪裏可以在Apache中設置HTTP響應頭?
- 28. 是否可以在URL中指定HTTP標頭?
- 29. HTTP頭請求是否可以在字段值中冒號?
- 30. 是否可以添加類?
請在這裏查看關於此主題的博客文章:http://sudhanshutheone.net/2013/10/14/internet-explorer-cannot-download-over-https/。雖然我試圖解決的問題是不同的,但我需要添加/刪除HTTP頭。要做到這一點的事件是HttpContext.PreSendRequestHeaders。您也可以從IIS設置或IIS的配置中執行此操作,如下所示:http://www.iis.net/configreference/system.webserver/httpprotocol/customheaders – dotnetguy 2013-10-16 06:26:07