使用腾讯云服务器搭建 Node.js 后端,以支持微信小程序的开发,是一个常见且实用的技术方案。以下是完整的流程步骤:
一、前期准备
-
注册腾讯云账号
- 访问 腾讯云官网
- 注册并完成实名认证。
-
购买云服务器(CVM)
- 推荐配置:1核2G内存,50GB系统盘(初期够用)
- 操作系统:推荐 Ubuntu Server 20.04 LTS 或 CentOS 7
- 地域选择:尽量选择离目标用户近的地区(如广州、上海)
-
获取服务器公网 IP 和登录信息
- 购买后记录公网 IP 地址
- 设置登录密码或使用密钥对(SSH 登录)
-
微信小程序 AppID 准备
- 在 微信公众平台 注册小程序
- 获取 AppID(后续用于接口鉴权等)
二、服务器环境搭建
1. 远程连接服务器(SSH)
ssh root@你的公网IP
# 输入密码或使用私钥登录
2. 更新系统包管理器
# Ubuntu
sudo apt update && sudo apt upgrade -y
# CentOS
sudo yum update -y
3. 安装 Node.js
方法一:使用 nvm(推荐)
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.0/install.sh | bash
source ~/.bashrc
nvm install --lts
node -v # 查看版本
npm -v
方法二:直接安装
# Ubuntu 示例
curl -fsSL https://deb.nodesource.com/setup_lts.x | sudo -E bash -
sudo apt-get install -y nodejs
4. 安装 PM2(进程守护工具)
npm install -g pm2
5. 安装 Nginx(反向X_X & HTTPS 支持)
# Ubuntu
sudo apt install nginx -y
sudo systemctl start nginx
sudo systemctl enable nginx
三、部署 Node.js 后端服务
1. 上传代码到服务器
方式有多种:
- 使用
git clone克隆项目仓库 - 使用
scp本地上传:scp -r ./my-backend root@your-ip:/home/myapp
2. 安装依赖并启动服务
cd /home/myapp
npm install
# 启动测试(临时)
node app.js
3. 使用 PM2 启动并守护进程
pm2 start app.js --name "wx-api"
pm2 startup
pm2 save
常用命令:
pm2 list:查看运行服务pm2 logs wx-api:查看日志pm2 restart wx-api:重启服务
四、配置域名与 HTTPS(重要!微信要求 HTTPS)
1. 购买并备案域名(可选但推荐)
- 在腾讯云购买域名,并完成实名认证和 ICP 备案(国内服务器必须)
2. 解析域名到服务器 IP
- 在腾讯云 DNS 控制台添加 A 记录:
api.yourdomain.com -> 你的公网IP
3. 配置 Nginx 反向X_X
编辑配置文件:
sudo nano /etc/nginx/sites-available/default
内容示例:
server {
listen 80;
server_name api.yourdomain.com;
location / {
proxy_pass http://127.0.0.1:3000; # 假设 Node.js 服务运行在 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;
}
}
测试并重载 Nginx:
sudo nginx -t
sudo systemctl reload nginx
4. 申请免费 SSL 证书(HTTPS)
使用 Let’s Encrypt + Certbot:
sudo apt install certbot python3-certbot-nginx -y
sudo certbot --nginx -d api.yourdomain.com
Certbot 会自动修改 Nginx 配置启用 HTTPS,并设置自动续期。
五、开放防火墙与安全组
1. 腾讯云控制台设置安全组
确保以下端口开放:
- 80:HTTP(用于域名访问和证书验证)
- 443:HTTPS(微信小程序必须使用)
- 22:SSH(管理服务器)
- (关闭其他无关端口,如 3000,避免直接暴露 Node 服务)
2. 服务器防火墙(可选)
# Ubuntu 使用 ufw
sudo ufw allow 'Nginx Full'
sudo ufw enable
六、微信小程序端调用接口
在小程序中发起请求:
wx.request({
url: 'https://api.yourdomain.com/api/login',
method: 'POST',
data: {
code: '...' // 微信登录 code
},
success(res) {
console.log(res.data)
}
})
注意事项:
- 必须使用 HTTPS 协议
- 域名需在小程序后台「开发管理」→「开发设置」→「服务器域名」中配置
七、后续维护建议
-
日志监控
- 使用
pm2 logs查看错误 - 可接入腾讯云 CLS(日志服务)
- 使用
-
数据库部署
- 可使用腾讯云 CDB(MySQL)或 MongoDB
- 或在服务器本地安装 MySQL/MongoDB
-
定期备份
- 备份代码、数据库、SSL 证书
-
自动部署(进阶)
- 使用 GitHub Actions / Jenkins 实现 CI/CD
总结:完整流程图
腾讯云服务器购买 → SSH 登录 → 安装 Node.js/PM2/Nginx
↓
上传 Node.js 项目 → npm install → PM2 启动
↓
绑定域名 → Nginx 反向X_X → 申请 SSL 证书(HTTPS)
↓
腾讯云安全组开放 80/443 → 小程序配置 request 域名
↓
微信小程序调用 HTTPS 接口,完成前后端通信
✅ 至此,你已成功搭建一个支持微信小程序的 Node.js 后端服务!
如有需要,我还可以提供示例代码模板(如 Express + JWT 用户登录)。
CLOUD技术博