【发布时间】:2017-07-26 17:07:15
【问题描述】:
在Asp.net Mvc 5中,如果控制器名称在http://localhost:51056/free这样的url中无效,我们如何重定向另一个页面
【问题讨论】:
标签: asp.net asp.net-mvc-5
在Asp.net Mvc 5中,如果控制器名称在http://localhost:51056/free这样的url中无效,我们如何重定向另一个页面
【问题讨论】:
标签: asp.net asp.net-mvc-5
重定向到不存在的控制器名称将始终返回 HTTP 404(未找到)响应。
可能最好的方法是在您的服务器上设置一个重定向规则,将/free 重定向到其他确实存在的路径。
【讨论】:
您可以在 web.config 中设置配置,如
<customErrors mode="On" >
<error statusCode="404" redirect="/404.shtml" />
</customErrors>
或者您可以在 Global.asax
中执行此操作if (Context.Response.StatusCode == 404) {
// handle this
}
【讨论】:
/free 是人们仍在以某种方式使用的已弃用链接(可能来自其他地方的过时共享),那么您可以这样做以让他们访问新的 url。唯一的缺点是它会为 EVERY 404...