评论

微信公众号基本配置填写服务器配置“系统发生错误,请稍后重试”的问题解决方案

我碰到的问题是使用的 https 的地址,浏览器访问检验都没有问题。但提交老是出现“系统发生错误,请稍后重试”的提示,Nginx access log里没有日志。最后终于解决了,分享一下,以供参考。

巨坑!!!

我碰到的问题是使用的 https 的地址,浏览器访问检验都没有问题。但提交老是出现“系统发生错误,请稍后重试”的提示,Nginx access log里没有日志。网上翻了无数文章,都解决不了。刚开始是怀疑微信是不是有问题或者没有认证,但后来换成 http 地址,竟然一下就成功了,贼郁闷。整整折腾了一天,终于可以了,给大家分享一下。

问题分析:

其实从Nginx里没有日志输出,我猜到问题应该是在SSL协议认证上。所以后面大部分时间是在调试Nginx配置。

总结:

原因1:微信认证要求SSL证书需要有证书链,通常用Let's Encrypt生成的证书是没有问题的,就是用 fullchain.pem证书,如果不是,那就需要改成这个完整证书。

原因2:微信认证要求支持 TLSv1.2 和 TLSv1.3 协议,如果默认是1.3就需要修改一下配置。在Nginx 的Server域里修改

ssl_protocols TLSv1.2 TLSv1.3;


但是特别注意,如果你用的是二级域名,或者反正是按虚拟机配置的,注意这段需要改在 default_server 的Server域里,其它主机配置里增加是没用的

listen       443 ssl http2 default_server;
server_name  www.***.com;
ssl_protocols TLSv1.2 TLSv1.3;


完了可以先用下面这条命令测试一下:

openssl s_client -connect www.***.com:443 -tls1_2 2> /dev/null | grep -i -E "cipher|protocol"


如果显示正常的 cipher 信息,那就是可以了。

最后一次编辑于  05-05  
点赞 3
收藏
评论

3 个评论

  • Merleni  -
    Merleni -
    11-15
    我的里面都有这个TLSv1.2 TLSv1.3为什么还报错
    
    11-15
    赞同
    回复
  • 风云
    风云
    05-14

    大神,我安装你的方法没有解决,用http就正常,改成https就不行了

    05-14
    赞同
    回复
  • 帘卷西风
    帘卷西风
    05-13

    超赞!!这里也可以免费申请SSL证书,也可以在线免费下载完整SSL证书链

    05-13
    赞同
    回复
登录 后发表内容