- 当前 Bug 的表现(可附上截图)
- 预期表现
IOS系统下正常,没有复现此问题。安卓机时不时的会复现,但不是每次,因为还是会有几率正常,不出现fail ssl hand shake error错误。而且如图,奇怪的是,截图中红色标记部分,最后一个是出现问题请求之后的,同样的https域名地址请求,前两个出现问题,最后一个反而不出问题,能正确读取到数据。照道理如果是证书问题,所有的请求都会出现啊。此页面同时还有wss请求,域名与https一样,没有出现,链接正常
- 复现路径
pages/home/index/index
- 提供一个最简复现 Demo
此二维码扫描进去后,点击热销车型中的“AMG GT”车型进去后,点击预约试驾按钮
如果是线上正常用户(非抓包)在微信Android 7.0版本请求出现ssl handshake error,有一部分原因是此前一个客户端bug,目前已经patch全量修复。如果不确认是否因为patch没有覆盖导致,请进入“我”-设置-关于微信,双击微信logo,看最后一行是否以38结尾即可;
如果使用fiddler等抓包工具抓包,发现ssl握手失败的情况,则是因为此版本客户端升级了Android target sdk level 至26,Google安全策略收紧,正常情况下是无法使用user证书链接https的。如果有需要抓包的情况,可以暂时使用Android系统版本7.0以下的设备抓包,或启用http抓包。我们正在商讨解决方案,看后续版本如何继续支持。
证书支持情况:
TLS1.3 是一定要支持吗?还是 支持了 1.2 就可以了,用的Tengine,但是Tengine的稳定版 2.1.2 不支持 1.3,只有开发版 Tengine-2.2.3 才支持TLS1.3
“看最后一行是否以38结尾即可”?
我下边这个手机还是存在bug的,是哪个位数不对?
有可能是证书信任链的问题? 可能会导致偶现
https://developers.weixin.qq.com/miniprogram/dev/framework/ability/network.html
可以看一下证书的要求 ,页面上可以找到证书验证工具
4G环境下出现安卓fail ssl hand shake error 错误,而 Wi-Fi下是正常的。问题依然存在,且影响面积较大,对用户产生了不小的困扰,证书协议支持情况如下:
如果是证书问题,希望能说明是什么问题。如果是使用姿势出现变动,烦请说明下。如果是基础库等官方问题,也烦请说明。不甚感激微信开发者BaBa~~~
附上证书链:
我也遇到了同样的问题 你的解决了吗
我也碰到这个问题了,使用nagix代理时才出现,如果直接用IIS证书则无此问题,使用HTML5源生video插件在微信浏览器里打开也没问题,只有小程序的video才出现这个问题,已经没办法了
机型绝对是支持的,公司最新的安卓机都拿来试了,基本都不行,试过偶尔几次可以,但是之后一样的代码也不行了,报错就是这个SSL_do_handshake() failed (SSL: error:14094416:SSL routines:ssl3_read_bytes:sslv3 alert certificate unknown:SSL alert number 46) while SSL handshaking, client: XX.XX.XX.XX, server: 0.0.0.0:443
我试过使用旧的安卓4.3的机子是100%可以的,很无语
问题解决了, ssl_certificate xxx.pem;这个配置必须使用pem证书,不能使用crt
有的安卓手机会自动好,但是遇到了很难受,100个用户里有3、4个会遇到这种问题。
使用nginx,ssl_protocols 协议配置如上
安卓8.0以下机型,大概率出现跟题主一样的
fail ssl hand shake error
问题
遇到同样的问题!!!
是的,这个问题我偶尔也会遇到
ios可以请求,但是安卓不能正常请求的可能原因:
TLS 必须支持 1.2 及以上版本。部分 Android 机型还未支持 TLS 1.2,请确保 HTTPS 服务器的 TLS 版本支持1.2及以下版本;
该怎么看支持不支持?我问题里有相关检测网站结果截图,您看下是否支持?
我的手机系统是5.1.1的,照道理支持1.2了
补充下,关键请官方仔细看我的问题描述和我的截图,安卓机是偶尔可以全部加加载成功不会提示错误,但至少我的机型大部分使用时会出现问题,概率在90%。然后我的页面请求不止一个,注意!注意!注意!不是所有请求都会出现,而是包含socket和request请求在内,部分请求OK,部分会出现错误(几乎是request请求会出现错误)。而且,每次打开,同一个request接口这次能读到数据,下次就有可能会出现
fail ssl hand shake error
错误!!!!!!!
明白不?如果是证书问题,会这样吗?如果证书问题或不支持TLS什么版本,应该是每次都会出现,而且每个接口都应该报错!!!!!!!!!!!!对不???????
@那个很帅的小白, 这样的证书是否可行?
补充一下,开发工具内都正常,没有出现问题。就安卓手机真机上体现
真机上:Wi-Fi 没有问题,4G有问题。。。。。证书支持 1.1 1.2 不支持 1.3