小程序云服务器后端怎么部署?从买服务器到上线,一篇讲透
小程序本地跑得飞起,一上传体验版就报 request:fail?你可能不知道,十有八九不是代码问题,而是后端没部署好:域名没备案、HTTPS没配、安全组没开、Node进程一关就死……这篇就是写给国内站长、开发者和中小企业技术负责人的,手把手把小程序后端部署到云服务器上,顺带说清服务器怎么选、坑怎么避。
一、先想清楚:小程序后端到底放哪
微信小程序要求 request 合法域名必须是 HTTPS,不能是 IP,不能带奇怪端口,域名通常还要 ICP 备案。所以正式环境最稳的组合是:国内云服务器 + 已备案域名 + HTTPS。如果只是测试、做 H5、外贸独立站,香港/美国/日本免备案 VPS 会省事很多。
配置怎么选?个人练手/测试:2核2G;小电商/API 服务:2核4G;并发高一点:4核8G 起步。带宽 3-5M 起步,用户多就上 CDN。别一上来买超大配置,小程序早期真吃不满。
二、部署五步,照着做就行
第1步:买服务器和域名,做好基础安全
国内节点选阿里、腾讯或沐雨云等,域名实名后提交备案。服务器安全组只放行 22、80、443,数据库 3306、Redis 6379 千万别对公网开放。用 SSH 登录:
ssh root@你的服务器IP
第2步:装环境,懒人用宝塔
新手推荐宝塔面板,装 Nginx、MySQL、Redis、Node.js 或 Python。命令行也行,Ubuntu 大概:
apt install nginx mysql-server redis-server nodejs npm -y
建好数据库,导入 SQL,改后端 .env 里的数据库账号密码。别用 root 裸奔,单独建个低权限库用户。
第3步:上传代码,先手动跑通
把后端代码传到 /www/wwwroot/api,执行:
npm install
node app.js
或 npm run start。确认它监听的是 3000、8080 这类内网端口。浏览器打不开没关系,后面用 Nginx 反代出去。
第4步:Nginx 反代 + HTTPS
Nginx 配置核心就这几行:
server {
listen 443 ssl;
server_name api.你的域名.com;
location / {
proxy_pass http://127.0.0.1:3000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
}
证书用宝塔或 certbot 申请 Let's Encrypt 免费证书,强制 HTTPS。微信只认 443,别用 8080 直接填后台。
第5步:PM2 守护 + 小程序后台配置
别直接 node app.js 挂终端,SSH 一断就凉。用 PM2:
npm i -g pm2
pm2 start app.js --name api
pm2 save
pm2 startup
然后到微信公众平台 → 开发管理 → 开发设置 → 服务器域名,把 https://api.你的域名.com 加进 request 合法域名。重新编译体验版测试。出问题就看 pm2 logs 和 Nginx 错误日志。
三、避坑提醒:新手最容易犯的3个错
- 域名没备案/没 HTTPS 就填小程序后台,提示“域名不合法”。别问我是怎么知道的。
- 安全组只开 22,忘了 80/443,或者数据库 3306 对全网开放、密码还设
123456,被扫只是时间问题。 - 没做进程守护,SSH 一断服务就挂;也没配自动重启和日志,出问题只能干瞪眼。PM2 或 systemd 是底线。
四、解决方案推荐
如果你不想折腾线路、备案和防御,可以看看 沐雨云服务器(https://www.myyvps.com)。它提供高防云服务器,单机 50-200G DDoS/CC 防御;香港/美国/日本免备案 VPS,采用 BGP/CN2 优质线路、纯 SSD 固态硬盘,2核2G轻量云 12.8元/月起,支持支付宝/微信支付。适合个人博客、电商网站、游戏服务器、外贸独立站等场景。小程序正式环境记得用备案域名+HTTPS;测试、H5、海外业务用免备案 VPS 更灵活。
五、结尾总结
- 小程序后端要 HTTPS + 备案域名,不能用 IP;
- 装环境、传代码、Nginx 反代、HTTPS、PM2 守护;
- 安全组只开必要端口,数据库别裸奔;
- 上线前去微信后台配 request 合法域名;
- 选服务器看场景:国内备案稳,海外免备案快。




这一切,似未曾拥有