微信聊天界面突然空了(微信所有聊天对话框都没了)

微信聊天界面突然空了(微信所有聊天对话框都没了)

在项目组一个H5应用项目上线后,进行测试验证时,发现在部分Android手机上的微信的内置浏览器中打开时会出现页面空白的现象。

经不完全统计,出现三星s8、华为p9、华为nova2s、小米X5等手机打开个人中心显示为空白。如下所示:

微信聊天界面突然空了(微信所有聊天对话框都没了)

定位问题:

1、 出现页面空白后,怀疑页面请求问题,使用代理工具监控请求发现https请求正常。

2、 登录外网nginx服务器,在access.log日志中不能发现android手机发起的请求日志,这表明请求并未到达nginx服务器上,开始向网络同事寻求帮助是否有防火墙策略拦住请求。

3、 在nginx服务器上开启http/https双端口进行测试,对同一个资源请求文件进行测试,测试步骤如下

在android手机上通过微信APP打开

正常
空白且nginx服务器access.log无请求日志。

4、 后续怀疑https环境有问题,借助网上的第三方检测工具来检查当前的证书链是否完整:如

检测xx.com结果如下图所示

微信聊天界面突然空了(微信所有聊天对话框都没了)

5、确认Nginx服务器SSL证书链配置不当。证书需要上传服务器证书、CA证书,再是私钥部分。推断出漏传了CA证书部分,引发了部分环境因为缺乏证书链下https识别有问题。

Nginx服务器配置SSL

CFCA公司代理GlobalSign的签发及管理,有如下4个文件,分别是

微信聊天界面突然空了(微信所有聊天对话框都没了)

微信聊天界面突然空了(微信所有聊天对话框都没了)

其中根证书、中级证书、公钥分别如下图所示:

微信聊天界面突然空了(微信所有聊天对话框都没了)

微信聊天界面突然空了(微信所有聊天对话框都没了)

将服务器证书、中级证书和根证书打开,依次将其代码复制到文本文件中(包

括“—–BEGIN CERTIFICATE—–”和“—–END CERTIFICATE—–”),并保存成 server.crt。

如下:

-----BEGINCERTIFICATE-----
服务器证书编码
-----ENDCERTIFICATE-----
-----BEGINCERTIFICATE-----
中级证书编码
-----ENDCERTIFICATE-----
-----BEGINCERTIFICATE-----
根证书编码
-----ENDCERTIFICATE-----

在linux服务器使用如下,将根证书、公钥合并成CRT文件,保证Nginx 使用 KEY 和 CRT 格式的证书:

1) cp SSLCERT.cer server.crt

2) 增加一空行

3) cat Organization.cer >> server.crt

nginx配置如下:(通过验证)

微信聊天界面突然空了(微信所有聊天对话框都没了)

微信聊天界面突然空了(微信所有聊天对话框都没了)

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

(0)
上一篇 2021年8月6日 11:21
下一篇 2021年8月6日 11:21

相关文章

发表回复

登录后才能评论

客服QQ: 8838832

客服微信