【玩转SSL】HTTPS中证书链不完整的解决方案

证书链不完整所表现出的问题

在Chrome中完全正常的https页面,在微信(WebView)中表现有一定概率无法打开页面,无论是IOS还是Android,要么就是一片白,要么就是直接无法打开,要么提示证书不正确。

造成以上问题的原因就是证书链不完整,需要在服务器上配置完整的SSL证书链。

如何检测证书链是否完整

因问题的触发有一定概率,并不太容易通过参与项目人员的手机进行测试从而发现问题。此时可以借助在线检测工具。

SSL服务器证书安装检查器

当检测结果包含以下内容,则表示缺少中间证书,证书链不完整。

1.jpg

获取中间证书

PS: 1.有些服务商提供pem证书,pem证书包含中间证书,可用于替换crt证书,就不用再执行下面的步骤了 2.有些服务商提供的Nginx证书的crt证书中就包含了中间证书,可直接使用

1、从crt证书文件中解析出来

使用在线工具:获取证书信息及下载中间证书(当然也可以线下利用ssl工具或者openssl命令解析,方法自行百度,此处不在说明)

2、生成含有中间证书的新证书

将原始crt证书文件内容与在线工具生成的中间证书文件内容,复制粘贴到一起保存为.pem文件或.crt即可。

—–BEGIN CERTIFICATE—–
# CRT 证书内容
—–END CERTIFICATE—–

—–BEGIN CERTIFICATE—–
# 中间证书内容
—–END CERTIFICATE—–

3、将保存新的pem或crt文件进行部署

通过部署含有中间证书的新证书及key证书重新部署后,即可解决证书链不完整的问题。

相关文章

文章浏览阅读1.8k次,点赞63次,收藏54次。Linux下的目录权限...
文章浏览阅读1.6k次,点赞44次,收藏38次。关于Qt的安装、Wi...
本文介绍了使用shell脚本编写一个 Hello
文章浏览阅读1.5k次,点赞37次,收藏43次。【Linux】初识Lin...
文章浏览阅读3k次,点赞34次,收藏156次。Linux超详细笔记,...
文章浏览阅读6.8k次,点赞109次,收藏114次。【Linux】 Open...