zoukankan      html  css  js  c++  java
  • web.config中<customErrors>节点

    错误提示:

    “/”应用程序中的服务器错误。
    --------------------------------------------------------------------------------

    运行时错误
    说明: 服务器上出现应用程序错误。此应用程序的当前自定义错误设置禁止远程查看应用程序错误的详细信息(出于安全原因)。但可以通过在本地服务器计算机上运行的浏览器查看。

    详细信息: 若要使他人能够在远程计算机上查看此特定错误信息的详细信息,请在位于当前 Web 应用程序根目录下的“web.config”配置文件中创建一个 <customErrors> 标记。然后应将此 <customErrors> 标记的“mode”属性设置为“Off”。

    <customErrors>节点用于定义一些自定义错误信息的信息。此节点有Mode和defaultRedirect两个属性,其中defaultRedirect属性是一个可选属性,表示应用程序发生错误时重定向到的默认URL,如果没有指定该属性则显示一般性错误。Mode属性是一个必选属性,它有三个可能值,它们所代表的意义分别如下:
    Mode
    说明
    On  表示在本地和远程用户都会看到自定义错误信息。
    Off  禁用自定义错误信息,本地和远程用户都会看到详细的错误信息。
    RemoteOnly 表示本地用户将看到详细错误信息,而远程用户将会看到自定义错误信息。
    这里有必要说明一下本地用户和远程用户的概念。当我们访问asp.net应用程时所使用的机器和发布asp.net应用程序所使用的机器为同一台机器时称为本地用户,反之则称之为远程用户。在开发调试阶段为了便于查找错误Mode属性建议设置为Off,而在部署阶段应将Mode属性设置为On或者RemoteOnly,以避免这些详细的错误信息暴露了程序代码细节从而引来黑客的入侵。

    <error>子节点

    根据服务器的HTTP错误状态代码而重定向到我们自定义的错误页面,使<error>子节点下的配置生效,必须将<customErrors>节点节点的Mode属性设置为“On”。

    <error statusCode="403" redirect="403.htm" /> 
    <error statusCode="404" redirect="404.htm" /> 

    测试抛出异常: 

    ///抛出异常
    public ActionResult Top()
            {
                throw new Exception("发生异常...");
                //return View();
            }
    
    
    ///web.config中节点<customErrors> 
    <customErrors mode="On" defaultRedirect="/Shared/Error">
    </customErrors>

    将mode设置为On,本地和远程用户都会看到自定义错误信息,如下图

    如果将mode设置为Off,禁用自定义错误信息,本地和远程用户都会看到详细的错误信息,在开发过程中对查找异常很用帮助

    如果将mode设置为RemoteOnly, 本地用户将看到详细错误信息,而远程用户将会看到自定义错误信息。

    因此在开发阶段应将mode设置为Off,待正式运行时就应将mode设置为On或者RemoteOnly,这样避免了将错误信息直接抛给用户,也防止恶意截获异常.

  • 相关阅读:
    php改写session到数据库
    mysql UNIX时间戳与日期的相互转换
    关于netbeans中的JComboBox(复选框)
    Java中数据类型转换
    趣味游戏___表示数
    C语言 约瑟夫圈问题:N个人围成一圈,从第一个人开始按顺序报数并编号1,2,3,……N,然后开始从第一个人转圈报数,凡是报到3的退出圈子。则剩下的最后一个人编号是多少。
    maven——使用阿里云镜像
    spring——整合Mybatis
    spring——AOP(静态代理、动态代理、AOP)
    spring——通过注解显式的完成自动装配
  • 原文地址:https://www.cnblogs.com/aaronguo/p/3155578.html
Copyright © 2011-2022 走看看