Im使用名为EPiServer的CMS产品。我们需要创建我们自己的显示404的方法,这是使用.NET的标准customErrors无法实现的。我们已经撰写了一个模块,我们用它来检查HttpStatusCode
。我们在EndRequest方法中执行此操作。ASP.NET 404 httpmodule
如果状态是404,我们查询EPiServer为适当的404页,然后在该页面传输请求。然而,这并不返回404,即使我做了以下的正确状态心不是返回:
HttpContext.Current.Response.StatusCode = 404;
HttpContext.Current.Response.StatusDescription = "Page not Found";
HttpContext.Current.Server.TransferRequest(newPage);
同样,如果我做的Response.Redirect,而不是TransferRequest
那么它不是一个正确的404,因为URL有再改......
请告诉我这样做的正确方法吗?
在此先感谢 铝
你有没有尝试过这样的:http://stackoverflow.com/questions/5966613/process-html-files-with-httpmodule-to-catch-404-错误 - 上IIS7 – 2012-02-06 10:55:06