使用腾讯云服务器搭建 Node.js 后端,以支持微信小程序开发,可以按照以下步骤进行。整个流程包括:购买服务器、配置环境、部署 Node.js 服务、配置域名和 HTTPS、与小程序对接。
✅ 第一步:购买并配置腾讯云服务器
-
登录腾讯云控制台
- 访问 https://cloud.tencent.com
- 登录或注册账号。
-
购买云服务器(CVM)
- 进入「云服务器 CVM」页面。
- 选择:
- 地域(建议选离用户近的,如上海、广州)
- 镜像:推荐选择 Ubuntu Server 20.04/22.04 或 CentOS 7
- 实例规格:入门级即可(如 1核2G)
- 带宽:建议至少 1Mbps 公网带宽
- 安全组:确保开放
22(SSH)、80(HTTP)、443(HTTPS)端口
-
获取公网 IP 和登录信息
- 创建完成后,记录公网 IP 地址。
- 下载或记住登录密码(或使用密钥对登录)。
✅ 第二步:连接服务器并安装基础环境
- 通过 SSH 连接服务器
ssh root@你的公网IP
# 输入密码登录
- 更新系统包
sudo apt update && sudo apt upgrade -y # Ubuntu/Debian
# 或
sudo yum update -y # CentOS
- 安装 Node.js 和 npm
推荐使用 nvm(Node Version Manager)管理 Node.js 版本:
# 安装 nvm
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.0/install.sh | bash
# 重新加载 shell 配置
source ~/.bashrc
# 安装 Node.js(推荐 LTS 版本,如 18.x)
nvm install 18
nvm use 18
nvm alias default 18
# 验证安装
node -v
npm -v
- 安装 PM2(进程管理工具)
npm install -g pm2
✅ 第三步:上传并运行 Node.js 后端项目
-
上传代码到服务器
-
方法一:使用
git clone(推荐)git clone https://github.com/yourname/your-node-project.git cd your-node-project -
方法二:本地打包后用
scp上传scp -r ./project root@your-ip:/root/project
-
-
安装依赖
cd /path/to/your/project
npm install
- 测试运行
node app.js # 或 npm start
确保你的 Node.js 服务监听
0.0.0.0而不是localhost,以便外部访问。
例如在 Express 中:
app.listen(3000, '0.0.0.0', () => {
console.log('Server running on port 3000');
});
✅ 第四步:使用 PM2 启动并守护进程
pm2 start app.js --name "my-api"
pm2 startup # 设置开机自启
pm2 save # 保存当前进程列表
查看状态:
pm2 status
pm2 logs my-api
✅ 第五步:配置域名和 HTTPS(必须用于小程序)
微信小程序要求所有请求必须是 HTTPS 协议,不能使用 HTTP。
1. 购买并解析域名
- 在腾讯云购买一个域名(如
example.com)。 - 进入「域名解析」,添加 A 记录指向你的服务器公网 IP。
2. 申请免费 SSL 证书
- 进入腾讯云「SSL 证书」控制台。
- 申请免费的 TrustAsia 证书(支持单域名或泛域名)。
- 验证方式选择「DNS 验证」,按提示添加 TXT 记录完成验证。
- 审核通过后下载证书(选择 Nginx 类型,稍作修改可用)。
3. 安装 Nginx 并配置反向X_X + HTTPS
sudo apt install nginx -y
创建配置文件:
sudo nano /etc/nginx/sites-available/myapp
内容示例:
server {
listen 80;
server_name api.example.com;
return 301 https://$server_name$request_uri;
}
server {
listen 443 ssl;
server_name api.example.com;
ssl_certificate /path/to/ssl/fullchain.pem;
ssl_certificate_key /path/to/ssl/privkey.pem;
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/myapp /etc/nginx/sites-enabled/
sudo nginx -t # 测试配置
sudo systemctl reload nginx
将证书文件上传到服务器(如
/etc/ssl/myapp/),注意权限保护私钥。
✅ 第六步:小程序前端调用后端 API
在微信小程序中:
wx.request({
url: 'https://api.example.com/user/info',
method: 'GET',
success(res) {
console.log(res.data);
},
fail(err) {
console.error(err);
}
})
注意:
- 域名需在小程序后台「开发管理」→「开发设置」→「服务器域名」中配置
request合法域名。- 示例:添加
https://api.example.com
✅ 第七步:安全与维护建议
-
防火墙设置
- 腾讯云安全组只开放 80、443、22 端口。
- 关闭不必要的端口。
-
定期备份
- 备份数据库、代码、SSL 证书。
-
日志监控
- 使用
pm2 logs或结合日志服务。
- 使用
-
数据库(可选)
- 可使用腾讯云 MongoDB / MySQL / Redis,或本地安装。
🎯 总结:关键流程图
购买CVM → SSH连接 → 安装Node.js/PM2/Nginx
↓
上传项目 → PM2运行 → 域名解析
↓
申请SSL证书 → Nginx配置HTTPS反向X_X
↓
小程序配置合法域名 → 调用API
如有需要,我可以提供一个完整的 Express + Nginx + HTTPS 的配置模板或 GitHub 示例项目结构。欢迎继续提问!
云计算