最近又遇到一个安卓访问有问题,苹果和电脑访问正常的现象;安卓访问https失败,错误:fail ssl hand shake error。
对于这个奇葩的错误,就之前的经验,只能反思是否是证书配置错误。网上有遇到过的,但是都么有给出修改方式。
后来找到了两个检测工具:
https://www.myssl.cn/tools/check-server-cert.html
https://www.ssllabs.com/ssltest/analyze.html
通过这两种检测工具检测后,基本就知道是什么原因了,要么是协议配置不支持,要么是证书缺失。
我们遇到的情况就是中间证书缺失,当时申请的时候按照旧的方式去申请,会生成两个.cer文件。
需要将:ovroot.cer中间证书copy出来贴到server.cer证书的后面,问题就解决了。
附带Nginx的ssl配置手册:
一、证书整理
ovroot.cer文件为服务商中间证书,server.cer为服务证书,需要将两个证书并使用,否则会出现安卓无法访问,会出现fail ssl hand shake error这个错误。
将ovroot.cer的证书复制出来贴到server.cer内容后面,不要有空行;
二、Nginx的配置如下:
server {
listen 443;
server_name spdwechat.ctyun.cn; #对应的主机域名
ssl on;
ssl_certificate yun_cert/server.cer;//证书目录
ssl_certificate_key yun_cert/server.key; #私钥
ssl_session_timeout 5m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2; #按照这个协议配置
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
ssl_prefer_server_ciphers on;
location / {
proxy_pass http://cpsapi; #实际的程序监听地址
proxy_set_header Host $host;
proxy_set_header X-Real-Ip $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
access_log /server/logs/nginx/cps_rest_access.log main;
}
要支持TLSv1.2协议;
2. 本站不保证所提供下载的资源的准确性、安全性和完整性,资源仅供下载学习之用!如有链接无法下载、失效或广告,请联系客服处理,有奖励!
3. 您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容资源!如用于商业或者非法用途,与本站无关,一切后果请用户自负!
4. 如果您也有好的资源或教程,您可以投稿发布,成功分享后有站币奖励和额外收入!
三优资源网 » https配置与安卓访问https失败,错误:fail ssl hand shake error
常见问题FAQ
- 免费下载或者VIP会员专享资源能否直接商用?
- 本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
- 提示下载完但解压或打开不了?
- 找不到素材资源介绍文章里的示例图片?
- 三优资源网