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