Android端微信小程序访问CDN的HTTPS请求,出现证书校验失败时,您可以按如下步骤进行排查:
  1. 在Android端微信小程序端访问CDN的证书出现校验失败的情况,而在其他的浏览器中测试均是正常的,排查中间证书是否存在问题。
  2. 查看其证书链是否完整,如果完整,说明不是证书链问题。
  3. 排查是否是SNI问题导致的该问题,抓取Android微信端访问具体异常。
  4. 分析该客户端发起请求到服务器端,与服务器端交换证书报Certificate Unknown后抛出Reset,并且查看客户端发出的SSL请求也带有SNI信息。测试结果如下图:
    图 1. 客户端与服务器端交换证书后报错并发送RST包


    图 2. 客户端携带的SNI信息


  5. 查看CDN节点服务器端返回的证书也是该域名的证书,并没有查看到异常。CDN服务器端返回证书情况如下图:

  6. 发现提交的中间证书错误导致该问题。而导出中间证书可以使用浏览器的导出证书功能。导出中间证书方式如下图所示。