Asp classic 基于ASP的网站和表单的错误处理

Asp classic 基于ASP的网站和表单的错误处理,asp-classic,vbscript,error-handling,Asp Classic,Vbscript,Error Handling,我正在一个基于asp(而不是.net)的网站上工作,它跨越了大约400多页。。。现在,整个站点都存在ASP和VBScript错误,例如: Microsoft VBScript运行时错误“800a000d” 类型不匹配:“Cdate” /MySite/page.asp,第71行 (当我在“日期”字段中输入字符时,发生了上述情况。在这种情况下,我知道它的VBScript,但我得到了很多。) 现在,我知道我可以通过客户端验证(例如jQuery)来避免这种情况,但是当这种情况发生时,我如何编写默认的“错

我正在一个基于asp(而不是.net)的网站上工作,它跨越了大约400多页。。。现在,整个站点都存在ASP和VBScript错误,例如:

Microsoft VBScript运行时错误“800a000d”

类型不匹配:“Cdate”

/MySite/page.asp,第71行

(当我在“日期”字段中输入字符时,发生了上述情况。在这种情况下,我知道它的VBScript,但我得到了很多。)

现在,我知道我可以通过客户端验证(例如jQuery)来避免这种情况,但是当这种情况发生时,我如何编写默认的“错误”页面?你点击了错误,没有显示上面的内容,而是被重定向到一个通用的“错误”页面


我查阅了其中的一些内容,发现了ASP的“下一步错误恢复”,但我还没有找到任何可行的例子。每一条都是针对特定的错误(如5除以0)定制的,我真的不想编写400多条潜在的错误消息。

您可以在页面顶部添加以下代码

    <% on error resume next%>

.
..
....

.
..
....
(其他代码在上面,而不是第(.)点)

然后你加上

<% if err then
response.redirect("err.page?code="&err.code)
end if%>


您可以根据错误号在通用错误页中定义错误消息。

您可以通过IIS创建自定义错误页。我不确定你正在运行什么版本,等等,但这应该给你一个很好的起点

如果您向客户端询问相同的问题。您可以尝试捕获可能抛出的代码时钟的代码块

例如

<script language="text/javascript">
try
  {
//Code that will can throw error is here. 
  }
catch(err)
  {
 document.href.location="genericerrorpage.asp?err=" + err.code;


  }
}

</script>

尝试
{
//这里有可能抛出错误的代码。
}
捕捉(错误)
{
document.href.location=“genericerrorpage.asp?err=“+err.code;
}
}

嘿,谢谢你的回复。。。这已经足够好了,IIS允许我在服务器抛出http错误时指向特定页面。。。现在,我需要开始调试vbscript和验证错误(又名“立即杀死我”):-(