可能重复:
如何在ASP.NET MVC中正确处理404?
我已经在Asp.Net MVC(RC 5)中的404 Http错误处理程序中进行了更改,我仍然得到标准的404错误页面.我需要在IIS中更改某些内容吗?
这个问题与此有关,希望能更好地表达.
我想从ASP.NET MVC提供自定义404页面.我有路由处理程序和所有基础结构设置,以确保单个操作处理不存在的路由:
public ActionResult Handle404()
{
Response.StatusCode = 404;
return View("NotFound");
}
Run Code Online (Sandbox Code Playgroud)
问题:当我在返回内容之前将Response.StatusCode设置为404时,IIS会回送自己的内容(某些预定义消息).
在VS开发Web服务器上,这可以按预期工作 - 当我的内容(NotFound视图)被提供时,HTTP响应的状态代码是404 .
我相信当IIS处理管道看到应用程序返回404时,它只是用自己的响应替换整个响应.
IIS中的哪些设置会影响此行为?
我无法访问IIS安装,因此我无法对此进行调查 - 但是,如果我知道确切需要更改的内容,我可以要求托管服务提供商为我调整配置.