用安卓浏览器打开网址时提示“当前网站证书不可信且证书链长度为1,可能是服务器没有配置完整证书链”,如图:
原因:
SSL证书需要证书授权中心签发的证书才是可信的,浏览器所信任的证书是由ROOT CA签发。集成在浏览器里,随着系统更新而更新。
一般情况下我们的SSL,并不一定是由ROOT CA签发,更多的情况是由ROOT CA 的下一级签发(中间CA,Intermediate CA)
这样造成,我们虽然按照流程安装了SSL,但是还是表现为不可信。
解决方法:安装中间证书
apache:
如下在最下面增加SSLCertificateChainFile /www/ssl/yours_ca_bundle.crt
SSLEngine On
SSLCertificateFile /www/ssl/fullchain.pem
SSLCertificateKeyFile /www/ssl/privkey.pem
SSLCertificateChainFile /www/ssl/ca_bundle.crt
nginx:
提供商给了两个.crt证书文件,将这两个文件合并。直接用文本编辑器打开,将这两个证书文件的内容复制粘贴到一起,保存为.pem文件,重新上传即可。
以AlphaSSL为例,在签发的时候会要求你到https://www.alphassl.com/support/install-root-certificate.html,选择合适的加密方式,然后复制到原有的crt文件底部。然后重启web服务器,这样就完成SSL的全部安装。
安装完成后可以到https://www.ssllabs.com/ssltest/检测安装。