编程语言
首页 > 编程语言> > 微信小程序一直转转不请求接口

微信小程序一直转转不请求接口

作者:互联网

最近小程序开发测试环境一直转转不请求接口,iOS可以正常访问,安卓无法访问,提示: request:fail -2:net::ERR_FAILED 检查后发现是因为没有配置中间人证书。由于测试环境我们使用的是acme申请let's encrypt的泛域名证书。

由于我们的DNS解析托管在DNSPOD,因此就可以使用

export DP_Id="43211"     #DNSPOD APP_ID
export DP_Key="123123ss123112e21e332e432e32e"  #DNSPOD KEY
acme.sh --issue --dns dns_dp -d abc.cn -d *.m.abc.cn -d *.abc.cn    #域名,这里生成 abc.cn *.abc.cn *.t.abc.cn的泛影证书

还有托管在阿里云的解析就是

export Ali_Key="kkkkkkeeeeeyyyyyyyyy"
export Ali_Secret="ssssseeeeeccccrrrrreeeeetttttt"
acme.sh --issue --dns dns_ali -d xyz.cn -d *.xyz.cn

就可以生成了。

在~/.acme目录下就生成了对应证书的目录
比如我的域名是abc.cn,则在~/.acme/abc.cn目录下就有
ca.cer fullchain.cer abc.cn.cer abc.cn.conf abc.cn.csr abc.cn.csr.conf abc.cn.key
对应的文件,之前我用的是abc.cn.cer和abc.cn.key

nginx的配置就是

    #ssl_certificate      host/keys/abc.cn.cer;      #使用这个文件小程序无法使用
            ssl_certificate      host/keys/fullchain.cn.cer;   #使用这个正常访问
    ssl_certificate_key  host/keys/abc.cn.key;

但是这样之后就发现小程序不行,必须要使用fullchain.cer这个证书。
我们可以看到fullchain.cer和abc.cn.cer就缺了个ca.cer

当然如果你不知道你的ca.cer到底是多少你可以到https://www.myssl.cn/tools/downloadchain.html把你的证书文件复制进去,即可知道你的中间人证书。

标签:abc,cn,acme,证书,--,微信,转转,接口,cer
来源: https://blog.51cto.com/fengwan/2544647