2011-04-15 18 views
0

我導尿的Http FileNotFound例外(對於丟失的圖像),然後重定向請求的默認圖像像下面靜態文件的請求不會在我的Asp.Net MVC項目募集Application_Error事件

protected void Application_Error(object sender, EventArgs e) 
    { 
     if (Request.Path.StartsWith("/images/profile")) 
     { 

      Response.Redirect("/images/profile/default.jpg", true); 
      return; 
     } 
    } 

它我在調試我的網站時正在開發環境中工作。但是,當我將其部署到運行IIS 7.5的生產服務器時,此代碼不起作用,對圖像文件的請求不會觸發Application_Error事件。 IIS上有配置嗎?我找不到問題。

回答

1

您需要配置IIS以通過ASP.Net運行所有請求。

在Web.config中添加<modules runAllManagedModulesForAllRequests="true" /><system.webServer>


另外,您應該爲此添加路線,而不是處理Error事件。

+0

+1這個問題和你的回答讓我意識到,我一直在做一個愚蠢的假設404錯誤不知道怎麼處理它們不同於其他的。 – 2011-04-15 03:17:37

+0

感謝您的回答,我的system.webServer中有。必須有其他配置。你的意思是爲此添加一條路線。 – Yucel 2011-04-15 03:30:34

+1

好的答案,所以我們打算在每個請求中通過asp.net管道發送所有靜態文件請求,以便我們可以在'Application_Error'中處理404個請求。假設我們是合乎邏輯的人,那麼我們該怎麼做? – 2014-02-24 00:11:05

相關問題