我看到为了在ii7中显示经典asp的错误,我必须使用带有asp.net配置的web.config,如下所示:
<system.webServer>
<httpErrors errorMode="Detailed" />
<asp scriptErrorSentToBrowser="true" />
</system.webServer>
BUT:
我可以在经典asp中使用healthMonitoring来获取有关经典asp中的错误的电子邮件错误吗?
试图通过无法收到任何电子邮件:(只需重定向到主页
答案 0 :(得分:1)
据我所知,您不能将ASP.NET Health Monitoring用于“经典”ASP站点。
MSDN网站上的这个页面asp Element - IIS 7 Settings Schema详细说明了<asp>
节点内<system.webServer>
节点的所有不同属性,不幸的是,似乎没有一种机制可用于开启健康监测。
这是有意义的,因为<system.webServer>
节点由IIS7本身而不是ASP.NET运行时处理,并且定义了IIS7本身的配置,而健康监控功能是ASP.NET特定的,甚至由类实现在.NET框架的System.Web.Management Namespace。
也就是说,如果您希望通过电子邮件收到警报,那么只要您的经典ASP应用程序中出现错误,您就可以通过将errorsToNTLog
节点的<asp>
属性设置为True
:
<system.webServer>
<httpErrors errorMode="Detailed" />
<asp scriptErrorSentToBrowser="true" errorsToNTLog="True" />
</system.webServer>
这将确保应用程序中发生的ASP错误将记录到Windows事件日志中。然后,您可以使用单独的实用程序监视这些错误,该实用程序将在写入事件日志条目时向您发送电子邮件通知。
有关如何实现这一目标的详细说明,以及执行此操作所需的工具(开源,商业甚至自定义VBScript)的各种选项,可在此ServerFault帖子中找到: