将小程序源码部署到腾讯云轻量应用服务器(Lighthouse)是一个常见的需求,尤其适用于前端+后端一体化的小程序项目(如使用 Node.js、PHP、Python 等后端语言)。以下是详细的部署步骤:
🎯 一、准备工作
-
购买腾讯云轻量应用服务器
- 登录 腾讯云官网
- 进入「轻量应用服务器」控制台
- 创建实例:选择地区、操作系统(推荐 Ubuntu/CentOS)、套餐(1核2G起步)
- 设置登录方式:密钥或密码
-
获取你的小程序源码
- 前端代码:通常为
miniprogram目录(微信开发者工具生成) - 后端代码:可能是 Node.js、Express、Koa、PHP、Python Flask/Django 等
- 注意:小程序前端只能运行在微信客户端,不能直接部署在服务器上。你需要部署的是:
- 小程序的后端接口服务
- 静态资源(如图片、上传文件等)
- 前端代码:通常为
🧩 二、部署流程(以 Node.js + Express 后端为例)
1. 登录服务器(使用 SSH)
ssh root@你的服务器公网IP
# 或使用密钥登录
ssh -i ~/.ssh/your-key.pem root@公网IP
2. 安装必要环境
# 更新系统
sudo apt update && sudo apt upgrade -y
# 安装 Node.js(以 v18 为例)
curl -fsSL https://deb.nodesource.com/setup_18.x | sudo -E bash -
sudo apt-get install -y nodejs
# 验证安装
node -v
npm -v
# 安装 PM2(进程管理器)
npm install -g pm2
3. 上传小程序后端源码
方式一:使用 scp 命令上传本地代码
scp -r ./server root@你的IP:/root/myapp
方式二:使用 Git 克隆(推荐)
git clone https://github.com/yourname/your-miniapp-backend.git /root/myapp
注意:
server是你后端项目的目录,包含package.json和app.js等。
4. 安装依赖并启动服务
cd /root/myapp
npm install
# 测试运行
node app.js # 或 npm start
5. 使用 PM2 守护进程
pm2 start app.js --name "miniapp-api"
pm2 startup
pm2 save
6. 配置防火墙和安全组
- 腾讯云控制台 → 轻量服务器 → 防火墙
- 添加规则:放行端口(如
3000,80,443) - 示例:允许 TCP 3000 端口(如果你的服务监听 3000)
7. 域名与 HTTPS(可选但推荐)
- 绑定域名:在腾讯云备案域名,并解析到服务器 IP
- 配置 Nginx 反向X_X(更安全、支持 HTTPS)
安装 Nginx
sudo apt install nginx -y
配置 Nginx(示例)
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;
}
}
保存为 /etc/nginx/sites-available/miniapp,并启用:
ln -s /etc/nginx/sites-available/miniapp /etc/nginx/sites-enabled/
nginx -t && systemctl reload nginx
免费 SSL 证书(Let’s Encrypt)
sudo apt install certbot python3-certbot-nginx -y
certbot --nginx -d api.yourdomain.com
自动配置 HTTPS。
📱 三、小程序前端如何配合?
- 小程序前端代码无需部署到服务器,由开发者工具上传至微信平台
- 但需修改
request请求地址为你的服务器 API 地址:
// 在小程序中
wx.request({
url: 'https://api.yourdomain.com/user/info',
// ...
})
- 确保在微信公众平台「开发管理」→「开发设置」中添加你的服务器域名到 request 合法域名列表
✅ 四、常见问题排查
| 问题 | 解决方案 |
|---|---|
| 访问不到接口 | 检查安全组、防火墙是否开放端口 |
| 接口返回失败 | 查看 pm2 logs 或 journalctl 日志 |
| 域名无法访问 | 检查 DNS 解析、Nginx 配置、SSL 证书 |
| 微信报“不在以下 request 域名列表” | 登录小程序后台添加域名 |
🧰 五、其他技术栈参考
- PHP 项目:安装 Apache/Nginx + PHP + MySQL
- Python 项目:用 Gunicorn + Nginx 部署 Flask/Django
- 静态资源托管:可用轻量服务器的 COS 对象存储 + CDN
✅ 总结
| 步骤 | 内容 |
|---|---|
| 1 | 购买并登录轻量服务器 |
| 2 | 安装 Node.js / Python / PHP 环境 |
| 3 | 上传后端源码 |
| 4 | 安装依赖,用 PM2/Nginx 启动服务 |
| 5 | 配置域名和 HTTPS |
| 6 | 小程序前端调用该 API 域名 |
如果你提供具体的技术栈(如:uniapp + Vue3 + Node.js),我可以给出更精准的部署脚本和配置。
需要我帮你写一个自动化部署脚本吗?
云服务器