Http错误503服务不可用

Posted

技术标签:

【中文标题】Http错误503服务不可用【英文标题】:HTTP Error 503. The service is unavailable 【发布时间】:2013-10-09 10:57:51 【问题描述】:

我正在努力在 IIS8 中设置环境,我搜索了很多但找不到合适的解决方案。

我检查了错误日志,但不知道。

C:\Windows\System32\LogFiles\HTTPERR

    2013-10-09 09:28:39 192.168.43.205 60172 192.168.43.205 80 HTTP/1.1 GET / 503 2 AppOffline qa.hti.local 2013-10-09 09:28:39 192.168.43.205 60192 192.168.43.205 80 HTTP/1.1 GET /favicon.ico 503 2 AppOffline qa.hti.local

然后在事件查看器中:

警告:

    工作进程“11188”中协议“http”的侦听器通道 服务应用程序池“qa.hti.local”报告了一个侦听器通道 失败。数据字段包含错误号。 工作进程“7492”中协议“http”的侦听器通道 服务应用程序池“qa.hti.local”报告了一个侦听器通道 失败。数据字段包含错误号。 工作进程“9088”中协议“http”的侦听器通道 服务应用程序池“qa.hti.local”报告了一个侦听器通道 失败。数据字段包含错误号。 工作进程“9964”中协议“http”的侦听器通道 服务应用程序池“qa.hti.local”报告了一个侦听器通道 失败。数据字段包含错误号。 工作进程“7716”中协议“http”的侦听器通道 服务应用程序池“qa.hti.local”报告了一个侦听器通道 失败。数据字段包含错误号。

我不明白警告的含义。

错误: 应用程序池 'qa.hti.local' 由于服务进程中的一系列故障而被自动禁用 应用程序池。

注意:我了解到连续 5 次失败会导致 APP Pool 崩溃,并且可能会增加。我也尝试增加这个但没有成功。

请分享你的想法。

【问题讨论】:

查看Server Fault 【参考方案1】:

我在遇到类似问题并正在寻找解决方案时遇到了这个问题。

我的问题特别与我们的 IIS 共享配置有关。我们在其中一台服务器上启用了 IIS 中的一项功能(Http 重定向),但该功能未安装在任何其他服务器上,因此服务器“功能”与所有服务器不同步。

我能够通过在第一台服务器上卸载新添加的内容来解决该问题,使其恢复到与其他服务器匹配的状态。稍后重置 IIS,AppPools 不再关闭,一切恢复正常。

因此,如果您正在使用 IIS 共享配置并且 IIS 正在创建“服务不可用”错误并且 AppPools 正在关闭,这可能是系统配置不同步的症状,这会破坏共享配置。希望这篇文章能帮助某人比我更快地找到解决方案。

【讨论】:

我们在从一台服务器迁移到另一台服务器时遇到了同样的问题。新服务器关闭 AppPools 并显示 503。结果它不像原始服务器那样具有 Http Redirect。安装缺少的功能解决了这个问题。 @kojo HttpRedirect 正是我们缺少的功能。 这解决了我的问题。我在主 IIS 上安装了 ARR,而所有其他实例都没有。安装完毕,一切正常。谢谢!!!【参考方案2】:

我遇到了类似的问题,这是由于另一个错误 (2282 IIS-W3SVC-WP) 导致池自行停止。我的问题是由于配置问题无法加载 de 模块 owssvr.dll。 我的解决方案是将“启用 32 位应用程序”设置从 True 设置为 false。

我正在使用 Visual Studio 2013 在 Windows Server 2012 上的 Sharepoint 2013 上部署解决方案。

我知道这应该是一个非常具体的问题,但我想帮助所有有同样问题的人。

【讨论】:

【参考方案3】:

可能你没有读取目录的权限。

目录(和文件)需要对 windows-group "USERS" 或 windows-grou "IIS_IUSRS" 以及您的 apppoolidentity 具有读取权限。

【讨论】:

【参考方案4】:

更新后,我在 Windows 10 1803 上也发生了这种情况。

在事件日志的前面部分,存在与缺少 DLLS 相关的错误,特别是 iiswsock.dll 和 compstat.dll。

开启以下 Windows 功能后(在 IIS > WWWServices > Performance Features and AppDev Features 下):

动态和静态内容压缩,以及 WebSocket 协议 Windows 功能

这些错误在 IIS 重新启动后消失了。

【讨论】:

添加静态内容压缩后,它开始工作。不知道为什么 dotnet 5 需要这个功能。【参考方案5】:

503 2

那是 2 的子状态代码吗?如果是这样,您可能需要确保您的网站没有受到过多 (5000+) # 个请求的影响。

http://support.microsoft.com/kb/943891

数据字段包含错误号。

错误号是多少?

【讨论】:

【参考方案6】:

这也可能是由于您的软件供应商没有意识到他们在您的 2008 R2 服务器上安装了 32 位版本的应用程序池应用程序。在对我的服务器进行了一些故障排除后,因为他们希望我重新安装 IIS,我检查了 Windows 应用程序日志并将其应用程序的 x86 架构错误通过电子邮件发送给他们。

【讨论】:

【参考方案7】:

如果缺少一部分 IIS(例如,许多 IIS 模块中的一个尚未安装在新服务器上),则可能会发生这种情况。

要做的事情是仔细比较源和目标的IIS配置,并将缺少的部分添加到目标中。

在最近的 IIS8.5->8.5 迁移中,我遇到了这个问题。遍历了整个堆栈。最后一点是缺少 IIS 的 Web Cert auth 部分。

安装:

powershell
import-module servermanager
add-windowsfeature Web-Cert-Auth

【讨论】:

【参考方案8】:

我重新安装了服务器并将applicationHost.config复制到新服务器,但没有安装相应的模块,并得到这个错误。我通过检查 IIS 管理器中的模块并确保已安装模块来解决此问题。

更新:在 Windows 日志-> 应用程序中,有一些关于缺少哪个模块的信息。

【讨论】:

【参考方案9】:

如果这对其他人有帮助:我们在 IIS 10 服务器上运行多个 https 站点。配置新站点的步骤之一是授予新应用程序池对系统证书的权限。在注册表的 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\SystemCertificates\MY 下,授予本地计算机上的应用程序池完全控制权。这为我们解决了这个问题。

【讨论】:

【参考方案10】:

我遇到了同样的问题,并通过将应用程序池用作身份的域帐户添加到 Web 服务器上的本地管理员组来解决它。正如上面@Lisa-Berlin 所述,也许它还可以为应用程序池身份帐户授予对应用程序目录的访问权限。

【讨论】:

以上是关于Http错误503服务不可用的主要内容,如果未能解决你的问题,请参考以下文章

HTTP 错误 503。当端口 80 已经空闲时服务不可用

HTTP 错误 503 Windows 10 秋季更新后服务在 IIS 上不可用

HTTP 错误 503。尝试运行本地主机时服务不可用

HTTP 503 错误 – 服务不可用 (Service unavailable)

Docker - 来自守护程序的错误响应:收到意外的 HTTP 状态:503 服务不可用

HTTP 错误 503。该服务在 IIS 中不可用