安装 SSL 证书遇到的一些问题
本文发布于 7 年前,部分内容可能已经失去参考价值。
在 IIS 中编辑网站绑定时,提示“至少一个其他网站正在使用同一 HTTPS 绑定,而此绑定用另一个证书配置。确实要重用此 HTTPS 绑定并将其他网站重新指定为使用新证书吗?”,那么所有网站都必须使用同一个域名证书吗?
否。只要在绑定 https 域名的时候勾选“需要服务器名称指示”就行了。
使用证书链检测工具检测结果证书链(Certificate chain)不完整怎么办?
这个问题我在两台相同版本 CentOS 和相同版本宝塔面板的 Linux 服务器上遇到过,一台证书链完整,一台证书链不完整。
使用宝塔自带的 SSL 证书导入的方式可能出现这种情况(个例),关闭之,并手动配置 nginx 的 conf 文件;而再有一台,手动配置不生效,宝塔自带 SSL 成功,因此请自行尝试。
我也在两台相同版本的 Windows Server 2012 R2 上(IIS 8.5)遇到过,一台证书链完整,一台证书链不完整。
解决思路:在命令提示符中键入 mmc,打开:文件 - 添加/添加管理单元,选择“证书”添加,选择“计算机帐户”,确定。展开“证书”
在“个人 - 证书”中可以看到我们导入的域名证书,查看它的颁发者,确保在“中间证书颁发机构 - 证书”(或“受信任的根证书颁发机构”)中能够找到,找到后继续找该证书的颁发者,一直找到根证书。一般会有多个中间证书,形成一个完整的证书链,如果证书有缺失,那么尝试重新导入域名证书,或向供应商索要中间证书。
有任何改动后,在命令提示符中执行 iisreset 来重启 IIS(IIS 管理器中的“重新启动”可能重启得不彻底),并且找到网站 - 绑定 - 删除 https 类型的绑定并重新添加,以使证书生效。
检测证书链完整后,继续摸索过程中发现,删除某中间证书,然后在 IIS 中重新绑定,会自动生成中间证书,难道是域名证书中已经包含了中间证书和根证书等完整的证书链,还是 Windows 会自动下载安装这些证书呢?
在开发支付宝支付/微信支付时回调 Url 无法接收数据。
可能是证书链不完整,建议用工具检测:GeoCerts™ SSL Checker,并用上述方法补全。
>> 遇到新问题将不断补充本文 <<