2

在 Windows Server 2008 SP2(32 位)上安装iisnode后,所有以前运行的应用程序都报告“HTTP 错误 503。服务不可用”。这些应用程序都没有注册或使用 iisnode 模块。

应用程序池在处理它们的第一个请求后停止。事件日志将错误报告为 EventID 5002:

“应用程序池‘DefaultAppPool’由于服务于该应用程序池的进程中的一系列故障而被自动禁用。”

在该错误之前,有几个警告作为事件 ID 3139:

“工作进程 '1688' 服务应用程序池 'DefaultAppPool' 中协议 'http' 的侦听器通道报告了侦听器通道故障。数据字段包含错误号。”

我已授予 node.exe (v0.8.14) 以及 C:\Program Files\iisnode\iisnode.dll 的应用程序池标识读取/执行权限。

如果我从 iis 中删除 iisnode 模块,则站点和应用程序池运行良好。

关于如何解决这些错误的任何想法?

4

2 回答 2

1

这是由于这个错误:https ://github.com/tjanczuk/iisnode/issues/231 。该错误已经修复,带有修复的新版本 iisnode 将很快发布。

同时,您可以在 Windows Server 2008 R2 上使用 iisnode 0.2.0 或移回 iisnode 0.1.21。

于 2012-11-19T20:20:51.630 回答
0

仅供在 Windows 事件查看器中收到此错误的任何人使用:

模块 DLL C:\Program Files\iisnode\iisnode.dll 加载失败。数据是错误的。

但不使用 Node,我的解决方案是简单地编辑C:\Windows\System32\inetsrv\config\applicationHost.config文件并删除所有引用的行iisnode(有 2 行)。

本质上,我们已经将旧的 IIS 服务器同步到新的服务器以迁移代码,旧的服务器安装了 IISNode,但新的没有。由于应用程序实际上并不需要 IISNode,因此只需从 IIS 配置中删除对它的引用即可为我们解决问题。

于 2021-10-26T17:02:27.513 回答