服务器上出现应用程序错误<customErrors> 标记

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

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

 

问题分析:

在服务器上运行网站,远程访问该网站时候,提示webconfig文件的配置无法显示程序中具体的错误信息,原因是没有将<customError>标记的“mode”属性设置为“off”,网上查询<customError>标记的详细信息如下:

<customErrors>节点用于定义一些自定义错误信息的信息。此节点有Mode和defaultRedirect两个属性,其中defaultRedirect属性是一个可选属性,表示应用程序发生错误时重定向到的默认URL,如果没有指定该属性则显示一般性错误。Mode属性是一个必选属性,它有三个可能值,它们所代表的意义分别如下:
Mode 说明
On 表示在本地和远程用户都会看到自定义错误信息。
Off 禁用自定义错误信息,本地和远程用户都会看到详细的错误信息。
RemoteOnly 表示本地用户将看到详细错误信息,而远程用户将会看到自定义错误信息。

这里有必要说明一下本地用户和远程用户的概念。当我们访问asp.net应用程时所使用的机器和发布asp.net应用程序所使用的机器为同一台机器时成为本地用户,反之则称之为远程用户。在开发调试阶段为了便于查找错误Mode属性建议设置为Off,而在部署阶段应将Mode属性设置为On或者RemoteOnly,以避免这些详细的错误信息暴露了程序代码细节从而引来黑客的入侵。

<error>子节点
在<customErrors>节点下还包含有<error>子节点,这个节点主要是根据服务器的HTTP错误状态代码而重定向到我们自定义的错误页面,注意要使<error>子节点下的配置生效,必须将<customErrors>节点节点的Mode属性设置为“On”。下面是一个例子:
<customErrors mode="On"defaultRedirect="GenericErrorPage.htm">
     <error statusCode="403" redirect="403.htm"/>
     <error statusCode="404"redirect="404.htm" />
</customErrors>

在上面的配置中如果用户访问的页面不存在就会跳转到404.htm页面,如果用户没有权限访问请求的页面则会跳转到403.htm页面,403.htm和404.htm页面都是我们自己添加的页面,我们可以在页面中给出友好的错误提示。

 

然后再根据具体提示的错误信息,查看代码何处需要修改。


参考网址:http://blog.csdn.net/orichisonic/article/details/50345473

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
解决ASP.NET应用程序中的服务器错误的方法可以分为以下几步: 1. 查看错误消息:当出现服务器错误时,ASP.NET会自动记录错误信息。通过查看错误消息,可以了解具体的错误原因和位置。可以在Web.config文件中设置<customErrors>来控制错误信息的显示,或者通过调试工具来获取更详细的错误信息。 2. 调试:使用调试工具,例如Visual Studio,可以逐步调试代码,并查找可能的错误。可以通过设置断点、跟踪变量和查看调用堆栈等方法来定位和修复错误。 3. 日志记录:将关键的操作和错误信息记录到日志文件中。可以使用ASP.NET提供的日志记录功能,或者通过自定义代码来实现。通过查看日志文件,可以帮助我们追踪和分析错误。 4. 异常处理:通过在代码中使用异常处理机制,可以捕捉和处理潜在的错误。可以使用try-catch语句块来捕获异常,并在catch块中处理异常情况。可以将异常信息记录到日志文件中,或者向用户显示友好的错误信息。 5. 配置文件:检查web.config文件中的设置,确保应用程序的配置正确。例如,检查数据库连接字符串、认证和授权设置等。 6. 更新和修复:确保应用程序和相关组件的版本是最新的。ASP.NET团队会定期发布更新和修复补丁,可以通过升级来解决一些已知的问题。 7. 缓存问题:有时候服务器错误可能是由于缓存引起的。可以尝试清除缓存,并重新加载页面或者相关数据。 8. 确保服务器环境配置正确:确保服务器上的ASP.NET环境配置正确,例如.NET Framework版本、应用程序池设置等。 9. 参考文档和社区:ASP.NET有一个庞大的社区,可以在官方文档、博客、论坛等地方找到大量的解决方案和经验分享。可以在社区中提问,寻求帮助。 10. 专家咨询:如果以上方法都无法解决问题,可以寻求专家的帮助。可以通过技术论坛、咨询服务或者微软的支持渠道来获取帮助。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值