2013-02-21 69 views
0

我有一個如下所示的URL:/ employees?employeeId = 3992,它顯示ID爲3992的員工。這很好,HTTP狀態代碼是200 OK。IHttpModule RewritePath StatusCode 404

然而,當有人在URL如寫入無效ID:/員工僱員= 39920,我想我的HTTP處理程序的路徑改寫爲我們的錯誤頁面,併發送HTTP狀態碼404

?下面是我使用的代碼:

if (employee == null) 
{ 
    context.RewritePath("/error-page"); 
    context.Response.StatusCode = 404; // if I remove this line, the error-page is displayed, and the StatusCode is 200. 
} 

當我的HTTP狀態代碼設置爲404,頁面顯示該標準ASP.NET的404錯誤頁面。

enter image description here

+1

退房這個職位,這似乎覆蓋你想達到什麼http://helephant.com/ 2009年/ 02/11 /提高僻-ASPNET,把手-404-請求/ – bUKaneer 2013-02-21 13:53:42

回答

0

又撥打了

context.Response.TrySkipIisCustomErrors = true; 

如:

if (employee == null) 
{ 
    context.Response.TrySkipIisCustomErrors = true; 
    context.RewritePath("/error-page"); 
    context.Response.StatusCode = 404; 
} 
相關問題