在腾讯云免费 SSL 证书部署到小程序,核心原则是:SSL 证书必须部署在服务器端(或 CDN/负载均衡),而不是直接上传到小程序后台。小程序通过 HTTPS 协议访问你的后端接口,因此只要你的服务器配置了有效的 SSL 证书,小程序即可正常通信。
以下是完整操作流程:
✅ 一、申请腾讯云免费 SSL 证书
- 登录 腾讯云 SSL 证书控制台
- 点击「购买/申请」→ 选择「免费」类型(DV 单域名)
- 填写域名(需已备案且指向你的服务器 IP)
- 选择验证方式:
- DNS 验证(推荐):添加一条 TXT 记录到域名 DNS 解析
- HTTP 验证:将验证文件上传至网站根目录
- 提交后等待审核(通常几分钟内完成)
⚠️ 注意:小程序要求域名必须是 HTTPS 可访问的,且不能是 IP 地址。
✅ 二、下载并部署证书到服务器
- 审核通过后,在控制台下载证书包(包含
.crt和.key文件) - 根据你的服务器环境部署:
🌐 Nginx 示例配置:
server {
listen 443 ssl;
server_name yourdomain.com;
ssl_certificate /path/to/cert.pem; # 证书文件
ssl_certificate_key /path/to/key.key; # 私钥文件
ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers HIGH:!aNULL:!MD5;
location / {
proxy_pass http://localhost:3000; # 转发到你的 Node.js/Java/PHP 等后端
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
}
📦 Apache 示例:
<VirtualHost *:443>
ServerName yourdomain.com
SSLEngine on
SSLCertificateFile /path/to/cert.pem
SSLCertificateKeyFile /path/to/key.key
SSLProtocol all -SSLv3 -TLSv1 -TLSv1.1
</VirtualHost>
💡 若使用云托管服务(如腾讯云 SCF、ECS + Docker、轻量应用服务器),请按对应平台指引上传证书。
✅ 三、在微信公众平台配置合法域名
- 登录 微信公众平台 → 开发管理 → 开发设置
- 找到 服务器域名 区域,添加你部署了 HTTPS 的域名(如
https://api.yourdomain.com)- 支持:request 域名、socket 域名、uploadfile/downloadfile 域名
- 确保该域名能正常响应 HTTPS 请求(可用
curl -I https://yourdomain.com测试)
🔒 小程序仅允许访问已配置的 HTTPS 域名,否则会出现「请求失败」错误。
✅ 四、验证与测试
- 使用浏览器访问
https://yourdomain.com,检查是否显示安全锁图标,无证书警告 - 用 Postman 或 curl 测试接口:
curl -v https://yourdomain.com/api/test - 在微信开发者工具中调用接口,确认无 HTTPS 错误
❗ 常见误区提醒
| 误区 | 正确做法 |
|---|---|
| 把证书文件传到小程序代码里 | ❌ 证书只用于服务端 HTTPS,小程序无需证书 |
| 使用自签名证书 | ❌ 微信小程序强制要求 CA 签发的有效证书 |
| 域名未备案或未启用 HTTPS | ❌ 必须完成 ICP 备案 + 开启 443 端口 + 正确配置证书 |
| 证书过期未续期 | ✅ 免费证书有效期 1 年,到期前 30 天可在控制台重新签发 |
🔄 后续维护
- 证书到期前 30 天,可在控制台点击「续签」(免费证书支持自动续签)
- 若更换服务器或迁移域名,记得同步更新微信后台的合法域名配置
需要我帮你生成某类服务器(如 Nginx/Docker/Tencent Cloud SCF)的具体部署脚本吗?
轻量云Cloud