金蝶部署 IIS 设置 HTTPS 证书出现回滚"未指定"问题解决
问题现象
在金蝶系统部署到 IIS 后,配置 HTTPS 证书时遇到以下问题:
- 证书设置后,在 IIS 管理器中点击站点时,证书绑定会被自动删除
- 事件查看器中出现相关日志,显示 IIS 主动将证书删除
- IIS 站点绑定中 SSL 证书显示为”未指定“
问题原因
根据 Microsoft 官方文档说明,此问题的根本原因是:
网站的 SSL 绑定已被删除且未替换,或者已被删除并替换为无效的证书信息。发生此问题的原因是旧版 SSL 证书哈希属性干扰了当前 SSL 绑定,导致删除正确的绑定。
简单来说,applicationHost.config 配置文件中残留的旧证书哈希值与新证书产生了冲突。
解决方案
步骤 1:定位配置文件
找到 IIS 的 applicationHost.config 配置文件,通常位于:
1 | C:\Windows\System32\inetsrv\config\applicationHost.config |
步骤 2:备份配置文件
在修改前,建议先备份该文件:
1 | Copy-Item "C:\Windows\System32\inetsrv\config\applicationHost.config" ` |
步骤 3:删除冲突属性
使用文本编辑器(以管理员身份运行)打开 applicationHost.config,在 <CustomMetaData> 部分中找到类似以下的属性:
1 | <key path="LM/W3SVC/X"> |
注意:
X代表你的站点 ID,property id="5506"是导致冲突的旧证书哈希属性。
将整个 <property> 标签删除,保存文件。
步骤 4:重启 IIS
打开 PowerShell(管理员权限)执行:
1 | iisreset |
步骤 5:重新绑定证书
在 IIS 管理器中重新为站点绑定 SSL 证书,问题应该已解决。
验证结果
- IIS 站点绑定中 SSL 证书正常显示
- 事件查看器中不再出现证书删除的日志
- HTTPS 访问正常