ASP:显示编译错误但不是运行时错误

时间:2017-03-23 01:58:41

标签: iis vbscript error-handling asp-classic

我之前已经知道很多问题,但这个问题似乎与其他问题略有不同。

当我写一些糟糕的ASP代码时,例如:

Dim a = 7

我会收到一条详细的错误消息,告诉我我是个白痴。但是,如果出现运行时错误,例如

a = 0/0

该页面将立即完成。加载的页面仅显示错误之前写入的内容,并且(最重要的是)没有错误消息提示错误位置/错误

如何获取运行时错误消息?

到目前为止我尝试过:

我已按照this question

尝试将其放入web.config中
<configuration>
<system.webServer>
    <httpErrors errorMode="Detailed" />
</system.webServer>
<system.web>
    <customErrors mode="Off"/>
    <compilation debug="true"/>
</system.web>

但是没有区别。

我也尝试了this answer中的建议:

  

如果您无法更改IIS错误设置,那么只需将其设置为   asp-page打印错误。

     

在文件顶部,设置On Error Resume Next以允许   尽管有任何错误,asp脚本仍可继续执行。

     

然后在您怀疑发生错误的可能位置或   就在页面底部;把这段代码。

IF Err.Number <> 0 THEN
    Response.Write "=========================================" & "<br />"
    Response.Write "Error description: " & Err.Description     & "<br />"
    Response.Write "Source: " & Err.Source                     & "<br />"
    Response.Write "LineNumber: " & Err.Line                   & "<br />"
    Response.Write "=========================================" & "<br />" 
END IF

该解决方案的问题在于行号是空的,源只是&#34; Microsoft VBScript运行时错误&#34;并且ASPError的大多数其他属性都是空白的。 (描述有&#34;溢出&#34;除以0错误)。所以我仍然不知道错误的位置:(

0 个答案:

没有答案