我試圖處理錯誤並顯示404,403等適當的頁面。ASP.NET MVC自定義錯誤處理,空白頁面
爲此,我製作了一個ErrorHandling過濾器,並按預期工作。也就是說,當我嘗試請求
mysite.com/Home/random_non-existent_action
用戶被重定向到我的自定義404頁,並返回404響應代碼。同樣適用於401和403。
我已經與web.config中做出錯誤處理過濾器和修改實現了這個:
這是問題開始的地方,我們的客戶要定製IIS的錯誤頁面爲好,例如,當我要求
mysite.com/images,正在顯示
IIS錯誤頁面,因爲目錄瀏覽被禁用,因爲這是防止在IIS的水平,我的錯誤處理過濾器不起作用。
要覆蓋IIS錯誤頁面,我心中已經添加以下代碼到web.config中
兩者的customErrors和httpErrors現在出現在我的web.config, 當我請求
mysite.com/Home/random_non-existent_action
我的自定義404頁面顯示(因爲它被IIS旁路,我的錯誤處理過濾器工作)。但是,當我要求
mysite.com/content
或
mysite.com/images
我越來越有404個狀態碼空白響應。
當我改變responseMode重定向(而不是ExecuteURL),它的工作原理。但很顯然,我試圖用相對路徑導航到我的自定義錯誤頁面。
1-爲什麼當我嘗試覆蓋IIS自定義錯誤頁面時,我得到空白響應?
2,爲什麼當我提出responseMode =「重定向」,但它的工作不responseMode =「ExecuteURL」
任何幫助,因爲我已經搜查了許多類似計算器的話題,但沒有成功不勝感激。
我已經嘗試過所有用於existingResponse和responseMode值的組合。除了responseMode =「Redirect」之外的任何內容都會使其變爲空白並顯示相應的狀態碼。
編輯:
我到底所做的是,
寫HTML內容,並重定向到使用javascript我的自定義錯誤頁。
確實爲這個問題幫你在所有的解決方案嗎? http://stackoverflow.com/questions/9997772/iis-7-5-custom-404-error-page-not-working-for-web-root-index-default –
不,它不。目錄瀏覽已安裝 – OzanYukruk