Windows 10版本 1709 上的 Web 应用程序返回 HTTP 错误 503 和 WAS 事件 5189
本文可帮助你重新保存 HTTP 503 错误和 5189 事件,在升级到版本 1709 (Fall Creators Update) Windows 10 或 Windows Server 2016 之后,Web 应用程序无法启动,并返回 HTTP 503 错误和 Windows 激活服务 (WAS) 事件 5189。
原始产品版本:Windows 10 企业版、Windows 10 专业版、Windows Server 2016 Standard、Windows Server 2016 Datacenter
原始 KB 编号: 4050891
症状
请考虑以下情况:
- 你有一台计算机正在运行Windows 10或启用了 Internet Information Services (IIS) 的Windows Server 2016。
- 升级到 Windows 10 版本 1709 (Fall Creators Update) 或 Windows Server 2016 版本 1709。
升级后,某些 Web 应用程序无法启动,并返回以下 HTTP 503 错误消息:
服务不可用
HTTP 错误 503。 服务不可用。
此外,在事件日志中记录 WAS 事件 5189:
Windows 进程激活服务无法为应用程序池“DefaultAppPool>”<生成应用程序池配置文件。 错误类型为“5”。 若要解决此问题,请确保 applicationhost.config 文件正确,并重新提交上次进行的配置更改。 数据字段包含错误号。
解决方案
若要解决此问题,请手动删除Windows 更新创建的符号链接。 为此,请按照下列步骤操作。
注意
可以删除与常规文件相同的符号链接。
使用“ 以管理员身份运行” 选项打开命令提示符窗口。
运行以下命令:
net stop WAS /y rmdir /s /q C:\inetpub\temp\appPools net start W3SVC
原因
在典型操作期间,WAS 为文件夹中的每个 IIS 应用程序池 C:\inetpub\temp\appPools
创建一个临时配置文件。
在初始升级阶段,Windows 更新扫描 Windows 文件夹) 外部的现有文件夹和文件 (,并记录升级后要还原的路径。 但是,由于配置文件是临时的,因此在停止 WAS 时会将其删除。
在Windows 更新的下一阶段,这些以前扫描的文件和文件夹将复制到临时升级位置。 Windows 升级后,Windows 更新会创建一个符号链接,指向复制到临时升级位置的每个文件夹,然后再尝试将这些文件和文件夹还原到其原始位置。
但是,由于这些临时配置文件不再存在,Windows 更新不会删除符号链接。
当 WAS 尝试作为 IIS 工作进程启动时,由于符号链接,它不会创建临时文件夹来写入配置。 因此,Http.Sys 返回 HTTP 503 错误。