【问题标题】:Classic ASP error line 0 column -1经典 ASP 错误行 0 列 -1
【发布时间】:2011-01-18 10:08:47
【问题描述】:

我们运行一个基于经典 ASP 的繁忙网站(出于各种遗留原因)。在繁忙时期,我们会看到无法解释的错误并且无法深入了解它。它通过 IIS 7 触发我们的自定义 500 错误页面来体现。

在此页面上,我们使用 ASPError 对象和 err 对象尽可能多地收集有关错误的详细信息。我们出现的是:

来自 ASPError 对象:


ASP代码:0

类别:

来源:

页面:

说明:

行:0

列:-1


err对象中err.Number、err.Source和err.Description都是空的。

我不知道是否进一步查找 IIS 配置问题、应用程序池等,或者这是否是与代码相关的问题。

任何想法都非常感谢!

【问题讨论】:

  • 你能发布前几行代码吗?
  • 嗨 Artem,错误本身似乎是从几乎任何页面触发的 - 它似乎与特定的代码位无关,让我认为它可能是 IIS 配置或类似配置.第 0 行,第 -1 列听起来很奇怪!如果有帮助,我可以发布我们自定义的 500 错误页面的代码,它会生成错误详细信息?
  • 在 IIS 设置中是否有 ASP 错误被发送到客户端?
  • 他们不是!我应该将 IIS > ASP > 编译中的“向浏览器发送错误”更改为 true,看看会发生什么?
  • 是的,确保它正在向浏览器发送错误,learn.iis.net/page.aspx/564/… 它应该给出更详细的错误消息。

标签: iis asp-classic


【解决方案1】:

您可以创建一个简单的单独的 ASP 页面来触发错误。例如:

<%
Option Explicit
a = 1
%>

浏览到该页面,看看会发生什么。如果您仍然没有收到错误信息,则可能是 IIS 配置。否则你可能会遇到一些非常奇怪的错误,但我过去从未见过。

【讨论】:

    【解决方案2】:

    我的回复有点晚了,希望你现在已经解决了这个问题,这将有助于以后在我们的位置上的其他人。

    在 IIS 中,打开站点,然后打开错误页面功能。从右侧选择“编辑功能设置...”并更改为“详细错误”。刷新抛出错误的页面,您应该会看到正在发生的真正错误。

    我有 2 个可能导致此问题的错误:缺少 DB Provider 和使用带有未声明变量的 Option Explicit。

    希望这对某人有所帮助!

    【讨论】:

      【解决方案3】:

      在 IIS7 及更高版本中,存在一个错误,即只有默认错误处理程序才能获取完整的错误详细信息 - 如果您从为特定错误代码配置的自定义错误页面调用 Server.GetLastError(),所有内容都会返回空白。

      但有一个解决方法 - 如果您将站点的默认错误属性(在 IIS 设置 > 错误页面 > 编辑功能设置...下)设置为您的自定义错误页面,只要未处理错误,IIS 就会调用此页面通过显式配置的状态代码处理程序(因此您的 404 等处理程序仍然可以工作) - 但由于某种原因,以这种方式处理错误意味着 Server.GetLastError() 仍然可以正常工作

      更多详情见 https://dylanbeattie.net/2008/12/04/fun-with-servergetlasterror-in-classic.html

      【讨论】:

      • 很遗憾您没有将详细信息放入此答案中,因为链接页面不再存在。 :-(
      • 它确实...重定向链中有一个损坏的链接(该网站自 2008 年以来已经迁移了五次,当时写这篇文章!)链接现在应该可以再次工作 - 帖子位于dylanbeattie.net/2008/12/04/… 以防万一。
      • 啊,不错不错。另一种方法(我只是在费了很多力气之后才这样做)是将自定义错误页面设置为 500.100 错误的目标。经典 ASP 不仅发送 500,它还发送 500.100,无论出于何种原因,如果以这种方式调用页面,Server.GetLastError() 就会起作用
      • @StephenR ...哦——很有趣。干得好。希望我早在 2008 年就知道这一点。:)
      猜你喜欢
      • 1970-01-01
      • 2016-10-06
      • 2010-11-04
      • 2012-02-11
      • 1970-01-01
      • 2011-12-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多