码迷,mamicode.com
首页 > 其他好文 > 详细

记录一个ssl证书引发的诡异问题

时间:2020-04-01 19:45:43      阅读:95      评论:0      收藏:0      [点我收藏+]

标签:苹果系统   tools   迁移   避免   网站   因此   公有云   网络   内容   

最近公司开发的一个小程序刚刚上线,之前部署在公有云上,后来想要向私有云迁移。结果迁移后,发现苹果手机和微信PC端都可以正常访问,唯独安卓手机不能。而这个问题在公有云上却没有发生。

这个问题,首先想到的是公司的网络策略是否限制了部分ip的访问;其次想到公有云和私有云部署的版本是否有差异。兜兜转转调试了大约一个星期,最终发现问题竟然出在证书上!

一、证书完整性检测

配置在网关上的crt和rsa证书是我用ssl相关命令自己将公司的pfx格式转换成的,而在执行过程中,不可避免地缺失了中间证书这一步(因为我对证书确实不太熟悉,何况nginx代理又没有相关配置项)。。。

下面这个网站是用来检测证书完整性的:

https://www.myssl.cn/tools/check-server-cert.html

如果没有配置中间证书,证书2就会显示“错误:服务器缺少中间证书”。安卓系统对证书的要求比苹果系统严格,因此没有中间证书的话在苹果系统可以通过,在安卓系统就不行。

二、生成中间证书

中间证书在线生成即可。在下面的网站将crt文件内容粘贴下来,就可以下载对应的中间证书:

https://www.myssl.cn/tools/downloadchain.html

三、将中间证书配置到nginx上

这里也是查了不少资料,最后看到了这一篇文章:

https://www.jianshu.com/p/89252f8ba0f6

将中间证书的内容直接粘贴到crt文件里面,在原文件内容下面直接编辑添加即可。

之后,重载nginx配置,安卓手机就能正常访问了!

记录一个ssl证书引发的诡异问题

标签:苹果系统   tools   迁移   避免   网站   因此   公有云   网络   内容   

原文地址:https://www.cnblogs.com/00986014w/p/12614564.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!