|
|
1
41
在Global.asax的OnError事件中处理此问题:
在错误页面中,应确保正确设置了状态代码:
您还可以很好地处理这里的各种其他错误代码。 谷歌通常会遵循302,然后遵守404状态代码-所以你需要确保你在错误页面上返回它。 |
|
|
2
14
您可以使用web.config将404个错误发送到自定义页面。
|
|
|
3
3
最简单的答案:不要用代码来做,但是 configure IIS instead . |
|
|
4
3
我也面对302而不是404。我通过以下步骤解决了问题: 控制器:
观点: 向用户显示一些错误消息。 Web.CONFIG:
最后,routhconfig:
|
|
|
5
2
你在哪里用这个?
|
|
|
6
2
我可以看到,在web.config中设置404页是一个很好的干净方法,但是它最初仍然会以302重定向到错误页来响应。例如,如果导航到: https://stackoverflow.com/x.aspx 您将通过302重定向到: https://stackoverflow.com/404?aspxerrorpath=/x.aspx 我想发生的是: 没有重定向。对丢失的URL的请求返回一个404状态代码,其中包含一条友好的错误消息。 |
|
|
7
2
我真的很喜欢这种方法:它创建一个视图来处理所有错误类型并重写IIS。 [1]:从web.config中删除所有“customErrors”&“httpErrors” [2]:选中“app_start/filterconfig.cs”如下:
[3]:在'global.asax'中添加此方法:
[4]:添加“controllers/errorpagecontroller.cs”
[5]:在“views/shared/error.cshtml”中
D |
|
8
0
您可以配置IIS本身以返回特定页面以响应任何类型的HTTP错误(包括404)。 |
|
|
9
0
我认为最好的方法是像下面这样使用web.config中的自定义错误构造,这让您能够以简单有效的方式连接页面来处理所有不同的HTTP代码。
|