在轻量应用服务器(如腾讯云轻量应用服务器、阿里云轻量服务器等)上安装小程序后台系统,通常包括以下几个步骤。以下以常见的基于 Node.js + MySQL 的小程序后台系统(如使用 Koa、Express 框架)为例,介绍部署流程。
一、准备工作
-
购买并登录轻量应用服务器
- 登录云服务商控制台(如腾讯云、阿里云)。
- 购买轻量应用服务器,选择操作系统(推荐 Ubuntu 20.04 / CentOS 7+)。
- 获取公网 IP、SSH 登录账号(root 或 ubuntu)和密码/密钥。
-
本地工具准备
- 使用 SSH 客户端(如 PuTTY、Xshell、Terminal)连接服务器。
- 准备文件传输工具(如 WinSCP、scp 命令)上传代码。
二、环境搭建
1. 更新系统并安装基础软件
# Ubuntu/Debian
sudo apt update && sudo apt upgrade -y
# CentOS
sudo yum update -y
2. 安装 Node.js(推荐使用 nvm)
# 安装 nvm
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.0/install.sh | bash
source ~/.bashrc
# 安装 Node.js(如 16.x 或 18.x)
nvm install 18
node -v # 验证版本
3. 安装 PM2(进程管理工具)
npm install -g pm2
4. 安装并配置 MySQL 或 MariaDB
# Ubuntu 安装 MySQL
sudo apt install mysql-server -y
sudo mysql_secure_installation
# 登录 MySQL 创建数据库
sudo mysql -u root -p
在 MySQL 中执行:
CREATE DATABASE miniprogram_db CHARACTER SET utf8mb4;
CREATE USER 'miniprogram_user'@'localhost' IDENTIFIED BY 'your_password';
GRANT ALL PRIVILEGES ON miniprogram_db.* TO 'miniprogram_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;
记录数据库名、用户名、密码,后续配置使用。
5. (可选)安装 Nginx(用于反向)
sudo apt install nginx -y
sudo systemctl start nginx
sudo systemctl enable nginx
配置 Nginx 反向(如将 80 端口到 Node.js 的 3000 端口):
server {
listen 80;
server_name your_domain_or_ip;
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;
}
}
重启 Nginx:
sudo nginx -t
sudo systemctl reload nginx
三、上传并部署后台代码
-
上传代码到服务器
使用
scp或 SFTP 工具将你的小程序后台代码上传到服务器,例如:scp -r ./backend root@your_server_ip:/root/miniprogram-backend -
安装依赖
cd /root/miniprogram-backend npm install -
配置数据库连接
修改
config/db.js或.env文件,填入你的 MySQL 信息:DB_HOST=localhost DB_USER=miniprogram_user DB_PASSWORD=your_password DB_NAME=miniprogram_db PORT=3000 -
运行项目
npm start # 或使用 PM2 启动(推荐) pm2 start app.js --name "miniprogram-api" pm2 save pm2 startup # 设置开机自启
四、测试访问
-
浏览器访问:
http://你的服务器IP/
应该能看到 API 返回数据(如/api/test)。 -
小程序前端配置
request域名:- 在微信小程序管理后台配置
request合法域名:https://你的域名或http://你的IP - 开发时可临时关闭域名校验(仅限调试)
- 在微信小程序管理后台配置
五、安全与优化建议
-
绑定域名并配置 HTTPS
- 购买域名,解析到服务器 IP。
-
使用 Let’s Encrypt 免费证书(通过 Certbot):
sudo apt install certbot python3-certbot-nginx -y sudo certbot --nginx -d yourdomain.com
-
防火墙设置
- 开放 80、443 端口,关闭不必要的端口。
- 腾讯云/阿里云控制台设置安全组规则。
-
定期备份数据库
mysqldump -u miniprogram_user -p miniprogram_db > backup.sql
六、常见问题
| 问题 | 解决方案 |
|---|---|
| 无法访问 3000 端口 | 检查防火墙、安全组是否放行 |
| 数据库连接失败 | 检查 MySQL 用户权限、密码、host 是否为 localhost |
| PM2 启动报错 | 查看日志 pm2 logs |
| 接口返回 502 | 检查 Node 服务是否运行,Nginx 配置是否正确 |
总结
通过以上步骤,你可以在轻量应用服务器上成功部署小程序后台系统。核心流程为:
环境搭建 → 安装数据库和 Node.js → 上传代码 → 配置数据库 → 使用 PM2 启动 → Nginx 反向 → 域名 + HTTPS
如果你使用的是现成的开源后台系统(如「uni-admin」、「Tencent Cloud Base」等),可参考其官方部署文档,流程类似。
如需具体框架(如 Express、Koa、NestJS)的部署示例,可提供项目结构,我可以进一步指导。
云计算CLOUD