这是我几个月来已经有两次的问题。基本上我接到一个电话说我们的网站发出HTTP错误503,我看看IIS7管理器并注意到AppPool已经关闭了。我重新启动它并继续愉快地继续它,直到几个月后它再次发生。
IIS管理器正在处理四个站点,这两个问题都发生在同一站点上。正在使用的.NET Framework版本是v4.0。
查看事件日志,我看到以下内容
Web服务器IIS:
警告:事件5011“为应用程序池'foo'提供服务的进程与Windows进程激活服务发生致命的通信错误。进程ID为'X'数据字段包含错误号。” - 此警告出现5次,X的差异值为5,每次警告之间大约需要10-15秒。
错误:事件5002“应用程序池'foo'由于为该应用程序池提供服务的进程中的一系列故障而被自动禁用。”
应用程序日志:
错误:事件1000:“错误应用程序名称:w3wp.exe,版本7.5.7601.17514,时间戳:0x4ce7afa2。
错误模块名称:clr.dll版本4.0.30319.17929,时间tamp:0x4ffa59b1。例外代码L 0x0000fd“信息:事件1001“故障桶,类型0
事件名称:APPCRASH响应:不可用“
以上两个事件发生在同一时间段内,首先是错误后跟两个信息事件。这种情况会发生五次,并与Web服务器日志中的警告对齐。
如果有人能够澄清发生了什么,那将非常感激。我宁愿不要担心我们的网站会从网上消失,因为应用程序池决定自行关闭。
我知道可以关闭快速失败保护(在一定次数的失败后导致关闭),但我宁愿处理潜在的问题。
答案 0 :(得分:4)
原来问题出在PDF4Net上,正如应用程序池中的崩溃转储所揭示的那样。链接How to debug w3wp clr.dll error(由MikeSmithDev发布)概述了该过程。
无论如何,带有一个非常小的页面的pdf随后会被透明图像标记。这将产生堆栈溢出错误,当多次尝试访问该文件时,将导致应用程序池关闭。原来这个修复只是更新PDF4Net的问题。