加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

iis-7 – ASPError对象在我的自定义错误页面上不包含任何数据

发布时间:2020-12-16 06:58:00 所属栏目:asp.Net 来源:网络整理
导读:我在web.config中有以下内容 httpErrors errorMode="Custom" remove statusCode="500" subStatusCode="-1" / error statusCode="500" prefixLanguageFilePath="" path="/error.asp" responseMode="ExecuteURL" //httpErrors 错误处理工作在于,当发生500错误
我在web.config中有以下内容

<httpErrors errorMode="Custom">
    <remove statusCode="500" subStatusCode="-1" />
    <error statusCode="500" prefixLanguageFilePath="" path="/error.asp" responseMode="ExecuteURL" />
</httpErrors>

错误处理工作在于,当发生500错误时,我被发送到我的error.asp而不是默认的500错误页面.

问题是没有设置Server.GetLastError返回的ASPError对象的任何属性.

例如,在下面的代码中,错误描述是

dim oErr : set oErr = Server.GetLastError

Response.Write "Error Description:  " & oErr.Description& "<br />"

更新

基于Joel在评论中链接的主题,我已将web.config更新为以下内容:

<httpErrors errorMode="Custom">
    <remove statusCode="500" subStatusCode="100" />
    <error statusCode="500" subStatusCode="100" prefixLanguageFilePath="" path="/error.asp" responseMode="ExecuteURL" />
</httpErrors>

这确实为我提供了GetLastError返回的ASPError对象中的数据.

现在的问题是我从生成错误的页面开头获取HTML,然后页面的其余部分是来自error.asp的HTML.

我真的很喜欢它重定向到error.asp而是将web.config更改为responseMode =“Redirect”似乎不起作用.

解决方法

这是适合我的解决方案.

像这样设置web.config:

<httpErrors errorMode="Custom">
    <remove statusCode="500" subStatusCode="100" />
    <error statusCode="500" subStatusCode="100" prefixLanguageFilePath="" path="/error.asp" responseMode="ExecuteURL" />
</httpErrors>

一个简单的error.asp可能如下所示:

<%@ Language=VBScript %>
<% 
    Option Explicit
    On Error Resume Next
    Response.Clear
    Dim objError,MessageBody
    Set objError = Server.GetLastError()

    Response.Write objError.ASPCode & "<br />"
    Response.Write objError.Number & "<br />"
    Response.Write objError.Description & "<br />"
%>

我的问题的关键似乎是On Error Resume Next和Response.Clear.

我在Creating Custom ASP Error Pages Microsoft KB文章(Q224070)上找到了解决方案.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读