在腾讯云轻量应用服务器(Lighthouse)上部署微信小程序的后端服务,是一个常见且高效的方案。微信小程序本身运行在微信客户端中,不需要直接“部署”到服务器,但其后端接口、数据库、文件存储等服务需要部署在服务器上。
以下是完整的部署流程:
一、准备工作
-
注册并登录腾讯云账号
- 访问 腾讯云官网
- 注册账号并完成实名认证。
-
购买轻量应用服务器(Lighthouse)
- 进入 轻量应用服务器控制台
- 选择地区、配置(建议至少 1核2G)
- 镜像选择:
- 推荐:Ubuntu 20.04/22.04 LTS(便于自定义环境)
- 或选择预装环境镜像如「Node.js + Nginx」
- 设置登录方式(密钥或密码)
- 完成购买并获取公网 IP 地址。
-
域名备案(可选但推荐)
- 如果你要通过域名访问 API(如
https://api.yourdomain.com),需进行 ICP 备案。 - 腾讯云支持轻量服务器域名备案,流程约 3–20 天。
- 如果你要通过域名访问 API(如
二、配置服务器环境
1. 登录服务器(使用 SSH)
ssh root@你的服务器IP
# 或使用密钥登录
ssh -i /path/to/your/key.pem root@你的服务器IP
2. 更新系统 & 安装基础软件
sudo apt update && sudo apt upgrade -y
3. 安装 Node.js(用于运行后端服务)
curl -fsSL https://deb.nodesource.com/setup_18.x | sudo -E bash -
sudo apt-get install -y nodejs
node -v # 检查版本
npm -v
4. 安装 PM2(进程管理器)
npm install -g pm2
5. 安装 Nginx(反向X_X & HTTPS)
sudo apt install nginx -y
sudo systemctl start nginx
sudo systemctl enable nginx
三、部署后端服务(以 Node.js 为例)
假设你的小程序后端是基于 Express/Koa 的 Node.js 服务。
1. 上传代码
方式一:使用 Git 克隆项目
git clone https://github.com/yourname/your-weapp-backend.git
cd your-weapp-backend
npm install
方式二:使用 SCP 本地上传
scp -r ./backend root@你的IP:/root/weapp-backend
2. 配置启动脚本
创建 ecosystem.config.js(PM2 配置):
module.exports = {
apps: [
{
name: 'weapp-api',
script: 'app.js', // 替换为你的入口文件
instances: 1,
autorestart: true,
watch: false,
max_memory_restart: '1G',
env: {
NODE_ENV: 'development',
PORT: 3000
},
env_production: {
NODE_ENV: 'production',
PORT: 3000
}
}
]
};
3. 启动服务
pm2 start ecosystem.config.js --env production
pm2 save
pm2 startup # 保证开机自启
此时服务运行在 http://localhost:3000
四、配置 Nginx 反向X_X
编辑 Nginx 配置:
sudo nano /etc/nginx/sites-available/weapp
内容如下:
server {
listen 80;
server_name api.yourdomain.com; # 替换为你的域名
location / {
proxy_pass http://127.0.0.1:3000;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_cache_bypass $http_upgrade;
}
}
启用站点:
sudo ln -s /etc/nginx/sites-available/weapp /etc/nginx/sites-enabled/
sudo nginx -t # 测试配置
sudo systemctl reload nginx
五、申请 SSL 证书(HTTPS)
微信小程序要求所有网络请求必须使用 HTTPS。
使用腾讯云免费证书 or Let’s Encrypt
推荐使用 Certbot 自动申请:
sudo apt install certbot python3-certbot-nginx -y
sudo certbot --nginx -d api.yourdomain.com
Certbot 会自动修改 Nginx 配置启用 HTTPS,并设置自动续期。
六、配置小程序前端
在微信开发者工具中:
- 修改
request请求地址为 HTTPS:
wx.request({
url: 'https://api.yourdomain.com/login',
// ...
})
- 在微信公众平台配置 request 合法域名:
- 登录 微信公众平台
- 开发 > 开发管理 > 开发设置
- 将
https://api.yourdomain.com添加到 request 合法域名
注意:不能使用 IP 地址,必须是已备案并配置 HTTPS 的域名。
七、其他可选服务
| 功能 | 腾讯云方案 |
|---|---|
| 数据库 | 轻量服务器内置 SQLite,或使用腾讯云 云数据库 MySQL |
| 文件存储 | 使用 COS 对象存储 + SDK 上传图片 |
| 短信验证 | 腾讯云 SMS 服务 |
| 云函数 | 可结合 SCF 云函数 实现无服务后端 |
常见问题排查
-
❌ 小程序提示 “request:fail”
- 检查域名是否备案、是否配置 HTTPS
- 检查后端是否正常运行(
pm2 list) - 检查防火墙是否开放 80/443 端口(腾讯云控制台安全组)
-
❌ Nginx 502 Bad Gateway
- 检查 Node.js 是否启动成功
- 检查端口是否冲突
总结
✅ 步骤总结:
- 购买腾讯云轻量服务器(Ubuntu + Node.js)
- 部署后端代码(Node.js + PM2)
- 配置 Nginx 反向X_X
- 申请 SSL 证书(HTTPS)
- 微信公众平台配置合法域名
- 小程序前端调用 HTTPS 接口
如果你提供具体的后端技术栈(如 Express、Koa、Flask、Django 等),我可以给出更详细的部署配置示例。
需要我为你生成一个完整的 Express + MySQL 示例部署流程吗?
云计算导航