部署微信小程序到腾讯云服务器的完整教程如下,适用于前端(小程序)+ 后端(Node.js/PHP/Python等)架构,以 Node.js + 腾讯云云服务器(CVM) 为例进行说明。
一、准备工作
1. 注册账号
- 微信公众平台:https://mp.weixin.qq.com(注册小程序)
- 腾讯云:https://cloud.tencent.com(注册并实名认证)
2. 购买腾讯云服务器(CVM)
- 登录腾讯云控制台。
- 进入【云服务器 CVM】 → 【新建实例】
- 配置建议:
- 地域:选择离用户近的(如广州、上海)
- 实例类型:标准型 S5 或 入门型 S2
- 镜像:选择 Ubuntu 20.04 64位(推荐)
- 带宽:建议 1Mbps 起(可后期升级)
- 安全组:开放端口
80(HTTP)、443(HTTPS)、22(SSH)
💡 建议同时购买域名并备案(小程序要求域名备案)
二、配置云服务器环境
1. 登录服务器(使用 SSH)
ssh root@你的服务器公网IP
输入密码即可登录。
2. 安装 Node.js 和 PM2
# 更新系统
sudo apt update
# 安装 Node.js(推荐使用 nvm)
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.0/install.sh | bash
source ~/.bashrc
nvm install 16 # 安装 Node.js 16
# 安装 PM2(进程管理器)
npm install -g pm2
3. 安装 Nginx(反向X_X)
sudo apt install nginx -y
sudo systemctl start nginx
sudo systemctl enable nginx
三、上传并部署后端代码
1. 上传代码(以 Node.js 为例)
将你的后端项目上传到服务器,可以使用:
scp命令git clone(推荐)
# 示例:克隆项目
git clone https://github.com/yourname/your-backend.git /var/www/myapp
cd /var/www/myapp
npm install
2. 使用 PM2 启动服务
pm2 start app.js --name "weapp-api"
pm2 startup
pm2 save
假设你的后端监听在
3000端口
四、配置 Nginx 反向X_X
编辑 Nginx 配置文件:
sudo nano /etc/nginx/sites-available/default
修改内容如下:
server {
listen 80;
server_name yourdomain.com; # 替换为你的域名
location / {
proxy_pass http://127.0.0.1:3000; # 转发到 Node.js 服务
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;
}
}
测试并重启 Nginx:
sudo nginx -t
sudo systemctl reload nginx
五、配置 HTTPS(必须用于小程序)
1. 申请 SSL 证书(腾讯云免费证书)
- 进入【SSL证书管理控制台】
- 申请免费证书(支持域名验证)
- 下载证书(Nginx 版本)
2. 上传证书并配置 HTTPS
将证书文件上传到服务器(如 /etc/nginx/ssl/)
修改 Nginx 配置:
server {
listen 443 ssl;
server_name yourdomain.com;
ssl_certificate /etc/nginx/ssl/your_domain.crt;
ssl_certificate_key /etc/nginx/ssl/your_domain.key;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers ECDHE-RSA-AES256-GCM-SHA512:ECDHE-RSA-AES128-GCM-SHA256;
ssl_prefer_server_ciphers off;
location / {
proxy_pass http://127.0.0.1:3000;
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;
}
}
# HTTP 跳转 HTTPS
server {
listen 80;
server_name yourdomain.com;
return 301 https://$host$request_uri;
}
重启 Nginx:
sudo systemctl restart nginx
六、小程序前端配置
1. 修改小程序 request 请求域名
在微信小程序项目中:
app.js或请求封装中,使用你的域名:wx.request({ url: 'https://yourdomain.com/api/login', // ... })
2. 配置合法域名(必须)
进入【微信公众平台】→【开发】→【开发管理】→【服务器域名】
- request 合法域名:
https://yourdomain.com - socket 合法域名(如有):
wss://yourdomain.com
域名必须备案 + HTTPS
七、常见问题
| 问题 | 解决方案 |
|---|---|
| 小程序提示“网络错误” | 检查域名是否备案、HTTPS 是否生效、后端是否运行 |
| Nginx 502 Bad Gateway | 检查后端服务是否启动(pm2 list) |
| 接口返回 403/404 | 检查 Nginx 配置路径和 proxy_pass 地址 |
| 无法连接服务器 | 检查安全组是否开放 80/443/22 端口 |
八、推荐优化
- 使用 腾讯云云函数 SCF + 云数据库 MongoDB 可免服务器部署(Serverless)
- 使用 Tencent Serverless Framework 快速部署
- 使用 微信小程序云开发(无需自建服务器)
总结
✅ 本教程完成了:
- 腾讯云服务器购买与配置
- Node.js 后端部署
- Nginx 反向X_X + HTTPS 配置
- 小程序调用接口配置
只要确保:
- 域名备案 ✅
- HTTPS 配置正确 ✅
- 后端服务运行正常 ✅
- 小程序配置合法域名 ✅
你的微信小程序就可以正常访问服务器接口了!
如需 PHP、Python(Django/Flask)等其他后端部署教程,可继续提问。
CDNK博客