我正在尝试使用自定义错误页面返回404状态代码。 但是我继续得到200,因为只要浏览器和服务器能够分辨,页面确实存在。
到目前为止我一直在尝试的是:
<customErrors mode="On" defaultRedirect="~/404" >
<error statusCode="404" redirect="~/404"/>
</customErrors>
404是指向“未找到页面”控制器和操作的路径。
我还试图在我的行动中设置状态代码..
public ActionResult PageNotFound(string locale)
{
Response.StatusCode = 404;
return View();
}
但这最终只会显示默认的服务器错误页面(带有红色错误消息文本的灰色页面)
有关如何解决这个问题的想法吗?
答案 0 :(得分:8)
我遇到了同样的问题,解决方案已发布here:
public ActionResult NotFound()
{
Response.StatusCode = 404;
Response.TrySkipIisCustomErrors = true; <---
return View();
}
答案 1 :(得分:0)
你试过了吗?
return HttpNotFound();
您可以在此处找到更多信息:
https://msdn.microsoft.com/en-us/library/system.web.mvc.controller.httpnotfound%28v=vs.118%29.aspx