.net自定义错误页面实现

前言:

  在实际的web开发中,经常会遇到以下情况,导致给用不好的体验:     a、程序未处理的异常,直接输出显示到用户页面     b、用户访问的资源不存在,直接显示系统默认的404页面     c、其它以下请求错误状态的系统默认页面(403等)   为了给用户友好的体验,在实际项目开发中, 需要对系统会不同的异常定制相应的友好提示页面

  .net中自定义异常页面的重定向都是通过web.config配置页面配置实现, 其具体的实现方式有两种方式:

其一、通过节点system.web新增customErrors配置节点实现

IIS环境需求:IIS7、IIS7+、IIS7以前版本

作用对象:作用于Asp.Net级别的错误处理程序        也就是说,对于(.html/.js)等静态资源不起作用 实现方式:

 <system.web>
   <customErrors mode="On" defaultRedirect="ApplicationErroy.aspx">
      <error statusCode="403" redirect="/ErrorPage/403.html"/>
      <error statusCode="404" redirect="/ErrorPage/404.html"/>
      <error statusCode="500" redirect="/ErrorPage/500.html"/>
    </customErrors>
  </system.web>

其二、通过节点system.webServer新增httpErrors配置节点实现

 IIS环境需求:IIS7、IIS7+

作用对象:作用于IIS级别的错误信息处理程序        也就是说,asp.net程序异常和静态资源异常都处理 实现方式:

  <system.webServer>
    <httpErrors errorMode="Custom" existingResponse="Replace">
      <clear />
      <error statusCode="404" responseMode="ExecuteURL" path="/ErrorPage/404.html" />
      <error statusCode="403" responseMode="ExecuteURL" path="/ErrorPage/403.html" />
      <error statusCode="500" responseMode="Redirect" path="/ErrorPage/500.html" />
    </httpErrors>
  </system.webServer>

应用总结:

  通过上面的描述,在实际开发中,只要环境时IIS7+,那么完全采用第二种方式即可

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏mwangblog

Linux中的xargs

1133
来自专栏北京马哥教育

19个Linux备份压缩命令

? 文 | 云豆 来源 | 菜鸟教程 ? 云豆贴心提醒,本文阅读时间5分钟,文末有秘密! Linux ar命令 Linux ar命令用于建立或修改备存...

3946
来自专栏破晓之歌

linux下docker+sentry安装配置

注意:接下来所有命令都需要用到 Redis、 PostgreSQL、 Outbound Email中的环境变量,所有命令中需要将将三个镜像连接起来

1621

Docker-如何清理磁盘占用

最近开始打包我们的一些应用,不得不说,我已经爱上了Docker这个工具。在AWS EC2上,它的存在使我们的工作方便了许多。然而,我们遇到的唯一问题是Docke...

3277
来自专栏Samego开发资源

JDK的安装与配置 | Linux&Windows

2183
来自专栏云计算教程系列

如何在CoreOS集群上使用CloudSlang清理Docker环境

CoreOS是一个Linux发行版,专注于利用Docker容器和服务查询快速启动集群环境。但是,Docker镜像可能占用Docker主机上相当多的磁盘空间。普通...

1070
来自专栏A周立SpringCloud

Docker系列教程21-Docker Compose快速入门

1653
来自专栏木子昭的博客

解决linux端口被占用

解决端口占用问题的最快捷方式就是杀死相关进程,以杀死占用22端口的ssh为例 查看进程 如图所示,对应的进程名为sshd 进程号为 55312 输入kill ...

3816
来自专栏康怀帅的专栏

CoreOS etcd3 集群实践

集群搭建请查看 使用 Ignition 配置工具硬盘安装 CoreOS 三节点集群。 本文内容基于 etcd3。 CoreOS 中的 etcd 是以 rkt 容...

4963
来自专栏云计算教程系列

如何在CentOS 7上安装和配置Ghost

Ghost是一个轻量级的开源博客平台,易于使用。Ghost是完全可定制的,有许多主题可用。

2243

扫码关注云+社区

领取腾讯云代金券