目录
1.检查小程序后台有没有配置
打开微信小程序,开发管理->服务器域名
2.注意事项:
- 域名只支持
https
(wx.request、wx.uploadFile、wx.downloadFile) 和wss
(wx.connectSocket) 协议; - 域名不能使用 IP 地址(小程序的局域网 IP 除外)或 localhost;
- 可以配置端口,如 https://myserver.com:8080,但是配置后只能向 https://myserver.com:8080 发起请求。如果向 https://myserver.com、https://myserver.com:9091 等 URL 请求则会失败。
- 如果不配置端口。如 https://myserver.com,那么请求的 URL 中也不能包含端口,甚至是默认的 443 端口也不可以。如果向 https://myserver.com:443 请求则会失败。
- 域名必须经过 ICP 备案;
- 出于安全考虑,
api.weixin.qq.com
不能被配置为服务器域名,相关 API 也不能在小程序内调用。 开发者应将 AppSecret 保存到后台服务器中,通过服务器使用getAccessToken
接口获取access_token
,并调用相关 API; - 不支持配置父域名,使用子域名。
3.证书要求
- HTTPS 证书必须有效;
- 证书必须被系统信任,即根证书被已系统内置
- 部署 SSL 证书的网站域名必须与证书颁发的域名一致
- 证书必须在有效期内
- 证书的信任链必需完整(需要服务器配置) 重点
证书链问题
由上图可见,证书级别为B,提示证书链不完整。
2.SSL服务器证书安装检查器_OPENSSL工具包_迅通诚信
输入域名和端口,显示如下信息
提示缺少中间证书,原因可能如下:缺少证书链的问题和解决办法
关于硬件设备的处理,大量的硬件设备并不会像浏览器一样下载CA
证书,如果你缺失的CA
证书不再这些硬件设备的内置证书库中,那么使用这些硬件设备访问网站就会一直显示你的域名是不可信状态。其实修复的办法很简单,就是在部署证书的时候,把那张缺失的CA
证书一并部署。目前一般的证书签发机构在签发证书的时候会把该CA
证书一并打包。但如果确实缺失了这张CA
证书也不要慌,MySSL
能够帮你补全证书链。
输入域名端口获取证书链,将文本内容复制到chain.crt结尾的文件中替换其内容,重启服务器,使
新证书生效。
4.服务端若使用新证书没有成功,可尝试不检验客户端证书
如图,也可以访问成功。