Windows 进程激活服务 (WAS) 将不再在我的 Windows 10 PC 上启动。因此,IIS 将无法启动。我不太确定它何时发生,但可能是在上个月。
在启动过程中,我现在在系统日志中收到一系列 4 错误事件:
WAS 5215:Windows 进程激活服务 (WAS) 无法为离线设置执行初始化。数据字段包含错误编号。[数据字段:50000780]
WAS 5005:Windows 进程激活服务 (WAS) 由于遇到错误而停止。数据字段包含错误编号。[数据字段:50000780]
服务控制管理器 7023:WAS 服务因以下错误而终止:文件存在。
服务控制管理器 7001:W3SVC 服务依赖于 WAS 服务,由于以下错误而无法启动:文件存在。
我对此类错误的引用不多,文件存在错误。
(我尝试使用 ProcMon 来尝试识别它所指的文件,但它绝对拒绝运行。)
编辑...终于让 ProcMon 工作(在使用 VS2017 提取 64 位版本之后)。原来导致上述问题的文件是C:\Windows\System32\inetsrv\Config
文件夹中的“applicationhost.config.tmp”文件。删除该文件允许该过程进一步继续。
现在,第一个和第三个错误是:
WAS 5215:Windows 进程激活服务 (WAS) 无法为离线设置执行初始化。数据字段包含错误编号。[数据字段:0D000780]
服务控制管理器 7023:Windows 进程激活服务服务因以下错误而终止:数据无效。
根据 Yanbing Shi 的回答,以下是iis.log
文件中的最新行:
[01/13/2018 23:10:41] [ ***** IIS 10.0 Component Based Setup ***** ]
[01/13/2018 23:10:41] .\inetsrv\iissetup.exe /install SharedLibraries /nano
[01/13/2018 23:10:41] Setting Installation Type to Nano
[01/13/2018 23:10:41] Successfully added IIS_IUSRS ACE to DACL at %ProgramData%\Microsoft\Windows\WER\ReportQueue.
[01/13/2018 23:10:42] < !!FAIL!! > Failed to create the NetFrameworkConfigurationKey key container (result=0x8009000f)
[01/13/2018 23:10:42] < !!FAIL!! > Install of component SharedLibraries result=0x8009000f
[01/13/2018 23:10:42] < !!FAIL!! > COMPONENT::ExecuteCommand result=0x8009000f
[01/13/2018 23:10:42] [ End of IIS 10.0 Component Based Setup ]
针对石彦兵的下一个回答……
起初,我无法查看/编辑/删除d6d986f09a1ee04e24c949879fdb506c_*
文件。当我尝试查看其权限时,我收到消息:You do not have permission to view this object's security properties, even as an administrative user.
但是,我能够将所有权更改为“管理员”,然后授予该组Full
权限,然后我可以查看它。该文件不是文本文件,但文件中约有 28 个字节是NetFrameworkConfigurationKey
. 我将文件移出该文件夹。
然后我跑net start was
了System error 80 has occurred. The file exists.
iis.log
文件中没有添加任何内容,但通常的错误事件已添加到系统事件日志中。
然后我手动删除了该applicationhost.config.tmp
文件并运行net start was
. 这一次,我得到了System error 13 has occurred. The data is invalid.
这一次,有新的条目 iis.log
[03/18/2018 07:44:54] [ ***** IIS 10.0 Component Based Setup ***** ]
[03/18/2018 07:44:54] .\inetsrv\iissetup.exe /install SharedLibraries /nano
[03/18/2018 07:44:54] Setting Installation Type to Nano
[03/18/2018 07:44:55] Successfully added IIS_IUSRS ACE to DACL at %ProgramData%\Microsoft\Windows\WER\ReportQueue.
[03/18/2018 07:44:55] Created NetFrameworkConfigurationKey key containter
[03/18/2018 07:44:56] Created NetFrameworkConfigurationKey user key
[03/18/2018 07:44:56] Set ACLs on NetFrameworkConfigurationKey
[03/18/2018 07:44:56] < !!FAIL!! > Failed to create the iisWasKey key container (result=0x8009000f)
[03/18/2018 07:44:56] < !!FAIL!! > Install of component SharedLibraries result=0x8009000f
[03/18/2018 07:44:56] < !!FAIL!! > COMPONENT::ExecuteCommand result=0x8009000f
[03/18/2018 07:44:56] [ End of IIS 10.0 Component Based Setup ]
失败是因为 WAS 在启动期间无法访问机器密钥。升级后第一次启动时,如果没有新机器密钥,WAS 将尝试创建新机器密钥,或者查询旧操作系统留下的旧机器密钥。在这种情况下,存在旧的机器密钥,但不幸的是 WAS 由于某些不清楚的原因无法访问它们。这些机器密钥用于加密 applicationHost.config 或 web.config 中的敏感信息(例如用户密码)。如果没有可以使用的机器密钥,WAS 将无法启动。
删除 IIS 使用的多个机器密钥的以下步骤可能有助于启动 WAS - WAS 将在启动时简单地重新创建这些密钥。
归档时间: |
|
查看次数: |
46415 次 |
最近记录: |