微信小程序强制所有接口必须使用https进行访问,但是服务器配置好证书之后,使用IDE可以正常访问,但是使用真机就一直报错(ios和andriod都会)。显示request fail 未能完成操作。KCFErrorDomainCFNetwork 错误301.
解决方法
1、Geotrust先检查下你的站点。把一些常规的问题解决掉,比如中级证书没装,等等问题。
2、微信支持,且只支持ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
所以,你需要把SSL V2,SSL V3这些协议都删掉
3、加密方式ssl_ciphers AES128+EECDH:AES128+EDH:!aNULL;
解决之后
配置完之后,检测一下,会变成这个样。还会有个BEAST的info,这个不用处理。
腾讯给的参考在 https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=10_4
但是腾讯这个坑爹货,ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP;
标点符号是 中文 ,所以,你懂的。
如果nginx使用上面的配置文件配置就好了,如果你用iis,google一下就会有注册表的修改方法,改完注册表,重启服务器,就好了。