可以,微信小程序完全支持使用免费的 SSL 证书。
只要该免费证书符合微信官方对 HTTPS 证书的合规要求,即可正常配置和使用。以下是具体的要求和注意事项:
1. 核心合规要求
无论证书是付费还是免费(如 Let’s Encrypt、阿里云免费版、腾讯云免费版等),必须满足以下条件:
- 颁发机构可信:证书必须由微信认可的根证书颁发机构(CA)签发。主流云服务商提供的免费证书通常都来自 DigiCert、GlobalSign 等知名 CA,因此都是被微信认可的。
- 有效期限制:证书的有效期必须在 397 天以内(目前行业普遍标准为 1 年或 2 年)。Let’s Encrypt 的证书通常为 90 天,完全符合要求。
- 域名匹配:证书绑定的域名必须与小程序后台配置的服务器域名完全一致。
- 协议版本:必须支持 TLS 1.2 及以上版本。
2. 如何获取和配置
你可以通过以下途径获取免费证书并配置到小程序:
- 获取证书:前往 Let’s Encrypt、阿里云、腾讯云、Cloudflare 等平台申请免费 DV(域名验证)证书。
- 上传证书:将生成的
.crt(公钥) 和.key(私钥) 文件上传到你的服务器。 - 配置服务器:在 Nginx、Apache 或 Tomcat 等 Web 服务器中配置 HTTPS,指向这两个文件。
- 提交审核:登录 微信公众平台,进入“开发” -> “开发管理” -> “开发设置”,在“服务器域名”栏目中添加你的 HTTPS 域名。提交后等待微信审核通过。
3. 特别注意事项
- 自动续期:如果你使用的是 Let’s Encrypt 等短期证书(如 90 天),务必配置好自动续期脚本,确保证书不过期,否则会导致小程序接口调用失败。
- IP 直连限制:微信小程序强制要求使用域名访问,不支持 IP 地址直接进行 HTTPS 连接。即使你有免费证书,也必须绑定到一个有效的域名上。
- 非 HTTPS 环境:小程序中的
wx.request、wx.uploadFile等网络请求接口,必须使用 HTTPS 协议,HTTP 请求会被拦截。
总结:你可以放心使用 Let’s Encrypt 等免费 SSL 证书,只要确保它是正规 CA 颁发、域名正确且已配置好自动续期,就能完美适配微信小程序。
云服务器