![ASP.NET 页面使 IIS7 应用程序池崩溃](https://linux22.com/image/526667/ASP.NET%20%E9%A1%B5%E9%9D%A2%E4%BD%BF%20IIS7%20%E5%BA%94%E7%94%A8%E7%A8%8B%E5%BA%8F%E6%B1%A0%E5%B4%A9%E6%BA%83.png)
我在 Server 2008 R2 上运行 IIS7.5。我有一个应用程序池,其中运行着 WCF Web 服务、.asmx Web 服务和 ASP.NET 站点。每当我尝试访问任何 ASP.NET 页面时,应用程序池都会崩溃。事件查看器中的应用程序日志中的条目都如下所示:
Faulting application name: w3wp.exe, version: 7.5.7600.16385, time stamp: 0x4a5bd0eb
Faulting module name: KERNELBASE.dll, version: 6.1.7600.16385, time stamp: 0x4a5bdfe0
我尝试让 Windows 错误报告在发生上述情况时向我提供崩溃转储,如下所述这里,但无济于事。我的开发机器上的应用程序池中运行着同样的应用程序集,即 Win7 上的 IIS7.5,并且运行良好。据我所知,应用程序池和 Web 应用程序的所有设置对于两者来说都是相同的。我在这里遗漏了什么?
答案1
最终在 DebugDiag 上设置了正确的规则之后,我就可以得到一个转储,我能够精确地找出问题所在 - 我部署的 ASP.NET 页面和它们使用的 COM+ 模块之间存在版本错误,并且它导致了未处理的异常,然后在尝试记录错误时导致了未处理的异常的无限循环,从而导致我的应用程序池崩溃。