在我的web.config
文件中,我启用了自定义错误:
<customErrors mode="On" defaultRedirect="~/Error">
<error redirect="~/Error/NotFound" statusCode="404" />
</customErrors>
我的NotFound
行动:
public ActionResult NotFound()
{
Response.StatusCode = 404; //no issues when this is not set
return View();
}
问题:
此配置在本地服务器上正常工作,但当我将其移动到远程服务器时,除非NotFound
操作的状态代码设置为200,否则不会显示自定义404页面(显示IIS默认值为404)。
有人能解释一下发生了什么吗?
答案 0 :(得分:6)
您还希望通过将TrySkipIisCustomErrors设置为true来禁用IIS自定义错误。
public ActionResult NotFound()
{
Response.StatusCode = 404;
Response.TrySkipIisCustomErrors = true; <---
return View();
}