在微信小程序开发中,“部署到服务器”通常指的是将小程序所需的后端服务(接口、数据库、文件存储等)托管到一个公网可访问的服务器上,而不是本地或局域网环境。这是因为微信小程序出于安全限制,要求所有网络请求必须指向合法的 HTTPS 域名,并且该域名需要备案。
一、什么是“部署到服务器”?
简单来说:
- 前端部分(WXML/WXSS/JS):通过微信开发者工具上传至微信平台,审核后上线。
- 后端部分(接口、数据处理、文件存储等):需要你部署到自己的服务器上,供小程序调用。
二、部署后端服务器的关键步骤
1. 准备服务器
你可以选择以下任意一种云服务器提供商:
- 阿里云 ECS
- 腾讯云 CVM
- 华为云
- AWS / Azure
- 或者虚拟主机(需支持运行你的后端程序)
推荐使用国内云服务商,因为域名需要在国内备案。
2. 搭建后端服务
根据你开发的小程序后端技术栈,部署相应的服务:
常见后端语言/框架:
- Node.js(Express/Koa/NestJS)
- Python(Django/Flask/FastAPI)
- Java(Spring Boot)
- PHP(ThinkPHP/Laravel)
- .NET Core
你需要:
- 把代码上传到服务器
- 安装依赖
- 启动服务(可以用 PM2、Nginx、Docker 等管理)
3. 配置域名和 HTTPS
微信小程序要求所有的网络请求都必须使用 HTTPS,且域名已备案。
步骤:
- 注册并备案一个域名
- 申请 SSL 证书(可以在阿里云、腾讯云免费申请)
- 配置 Nginx 或反向,绑定 HTTPS
- 确保 API 可以通过公网访问
4. 在微信公众平台配置域名
登录 微信公众平台 → 开发管理 → 开发设置 → 服务器域名
需要配置以下几类域名:
- request 合法域名(用于请求后端接口)
- socket 合法域名
- uploadFile 合法域名
- downloadFile 合法域名
✅ 注意:这些域名必须是 HTTPS,不能带端口号,必须已备案。
5. 小程序前端调用后端接口
在小程序代码中,通过 wx.request 发起请求,例如:
wx.request({
url: 'https://yourdomain.com/api/login',
method: 'POST',
data: {
username: 'test'
},
success(res) {
console.log('登录成功:', res.data)
}
})
三、推荐部署方式(简化流程)
| 工具 | 特点 |
|---|---|
| 云开发 TCB(腾讯云) | 微信官方推荐,无需自己买服务器,快速部署数据库、存储、云函数 |
| 宝塔面板 | 图形化操作,适合不懂命令行的人部署网站 |
| Docker + GitHub Actions | 自动化部署,适合有运维经验的人 |
| Vercel / Netlify + Serverless Function | 前端部署 + 后端函数即服务 |
四、常见问题
1. 为什么不能用 localhost?
微信小程序无法访问本地地址(如 http://localhost:3000),只能访问公网地址。
2. 为什么提示不在合法域名列表?
因为你没有在公众平台配置域名,或者域名未备案、不是 HTTPS。
3. 可以不用服务器吗?
可以使用微信的【云开发】功能,无需购买服务器,但有一定的使用限制。
总结
| 步骤 | 内容 |
|---|---|
| ✅ 1 | 购买服务器 + 备案域名 |
| ✅ 2 | 部署后端服务(Node/Python/Java等) |
| ✅ 3 | 配置 HTTPS 和域名解析 |
| ✅ 4 | 在公众平台设置 request 合法域名 |
| ✅ 5 | 小程序发起请求测试接口是否可用 |
如果你已经写好了后端接口,我可以一步步帮你部署到服务器上,比如使用 Node.js + Nginx + 腾讯云的方式。欢迎继续提问!
ECLOUD博客