架构师_程序员_码农网

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

搜索
查看: 16768|回复: 2

[资料] asp.net mvc4中自定义404

[复制链接]
发表于 2019-3-22 10:20:59 | 显示全部楼层 |阅读模式
定义404 方法当然有很多种。不同的方法所展现的形式也不一样,用户所体验也不一样。以下提供2两种

方法一:

1. 在web.config 中找到节点〈system.web〉xx…xx〈system.web〉 中启用404 配置

2.定义一个 controllers Error(这个随你) ,在action中如下定义

public ActionResult Index()
{
Response.Status = "404 Not Found";
Response.StatusCode = 404;
return View();
}
这种方式 默认为给你的url加上 ?aspxerrorpath=/ eg:http://localhost/Error??aspxerrorpath=/123456 故不推荐试用

方法二:

打开 Global.asax 文件
定义错误转向地址(controller/action)


新增对应控制器方法


收工。。当然配置这个是项目完结的最后一步。不然你Debug的时候看不到任何效果。





上一篇:IPv4和IPv6地址长度
下一篇:用句柄自动输入无法点击确定操作
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
 楼主| 发表于 2019-3-22 10:22:52 | 显示全部楼层
按照方法二配置,在本地测试是没有问题的,部署到正式环境iis上面,会有问题,还是显示iis的404页面,如下图:
QQ截图20190322102147.jpg

据说去掉 Response.StatusCode = 404;去掉就没问题了
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
 楼主| 发表于 2019-3-22 10:38:49 | 显示全部楼层
最终解决方案如下:
QQ截图20190322103625.jpg

web.config配置文件system.webServer新增如下节点:

控制器代码:



对于不存在的路径,能够正确相应404状态码,利于seo。
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

免责声明:
码农网所发布的一切软件、编程资料或者文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。如有侵权请邮件与我们联系处理。

Mail To:help@itsvse.com

QQ|手机版|小黑屋|架构师 ( 鲁ICP备14021824号-2 )|网站地图

GMT+8, 2025-5-7 14:25

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表