我创建了一个Asp.net MVC应用程序。 现在需要404处理。
已经更新的Global.asax和基于状态代码显示404页。 此外,在web.config中添加的customErrors财产。 它的工作的罚款。
现在我想重定向到404编程时,任何事情不符合我们的要求相匹配。
即
if(!valid)
{
return RedirectToAction("Index", "Page404");
}
它工作正常,但有2个状态一个是301,然后404。所以,我怎么能防止301? 我只需要404。
我怎样才能做到这一点?
在你的web.config
,添加:
<customErrors mode="On" >
<error statusCode="404" redirect="/404.shtml" />
</customErrors>
这将404.shtml页面重定向时未找到请求的资源。
注:无需编程方式将用户重定向这样的情况。
编辑:我真的建议:
if (Context.Response.StatusCode == 404) {
// handle this
}
刚抛出的状态码404:
Response.StatusCode = (int)System.Net.HttpStatusCode.NotFound