在京东云轻量应用服务器(Lightweight Application Server)上部署小程序后端和 Web 应用,通常采用 Linux + Nginx + Node.js/Java/Python 的架构。由于小程序和 Web 前端通常需要独立的域名和 HTTPS 证书,而轻量服务器适合快速上手,以下是基于 Ubuntu 20.04/22.04 或 CentOS 7/8 的通用完整步骤。
第一阶段:前期准备与网络配置
1. 购买与初始化
- 登录京东云控制台,购买“轻量应用服务器”。
- 操作系统选择:推荐 Ubuntu 20.04 LTS 或 CentOS 7.9(生态支持好)。
- 带宽设置:根据预估流量选择,建议至少 3Mbps 以上以保证首屏加载速度。
- 安全组配置(关键):
- 默认可能只开放了 80 和 443。
- 务必在控制台的“防火墙”或“安全组”中放行以下端口:
80(HTTP)443(HTTPS)22(SSH)- 后端服务端口(如 Node.js 的
3000, Java 的8080等)。
2. 连接服务器
使用终端工具(Windows 用 PuTTY/Xshell,Mac/Linux 用 Terminal)连接:
ssh root@<你的公网IP>
# 输入密码(首次登录需重置,请确保密码强度)
第二阶段:环境搭建
这里以最常见的 Node.js 为例(适用于大多数小程序后端 API 和现代 Web 框架),如果是 Java 或 Python,逻辑类似,仅安装命令不同。
1. 更新系统
# Ubuntu/Debian
sudo apt update && sudo apt upgrade -y
# CentOS
sudo yum update -y
2. 安装基础依赖
sudo apt install curl git wget unzip -y
3. 安装 Node.js 环境 (以 v18 LTS 为例)
推荐使用 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 # 验证安装
4. 安装数据库 (可选但推荐)
如果小程序需要存储数据,可安装 MySQL 或 MongoDB。
# 安装 MySQL (Ubuntu 示例)
sudo apt install mysql-server -y
sudo mysql_secure_installation # 按提示设置 root 密码
第三阶段:代码部署
假设你已经有打包好的项目代码(Web 静态文件 + 小程序后端 API 代码)。
方法 A:Git 拉取(推荐)
git clone <你的代码仓库地址>
cd your-project-folder
方法 B:本地打包上传
- 在本地将 Web 前端编译为
dist目录。 - 使用
scp或 FTP 工具(如 WinSCP、FileZilla)将文件上传到服务器指定目录(如/var/www/html)。
3. 启动后端服务
进入后端目录,安装依赖并启动:
npm install
# 生产环境建议使用 PM2 管理进程
npm install -g pm2
pm2 start app.js --name "miniapp-api"
pm2 save
pm2 startup
此时后端已运行在 localhost:3000(假设端口),外部无法直接访问,需通过 Nginx 反向X_X。
第四阶段:Nginx 反向X_X与域名解析
这是最关键的一步,用于将域名请求分发到后端接口,并提供 HTTPS。
1. 安装 Nginx
sudo apt install nginx -y
# 或 CentOS: sudo yum install nginx -y
2. 配置域名解析
- 在域名服务商处(如阿里云万网、腾讯云 DNSPod 等)添加一条 A 记录,指向你的京东云服务器公网 IP。
- 等待生效(通常几分钟到几小时)。
3. 获取 SSL 证书
轻量服务器可以使用 Let’s Encrypt 免费证书。
sudo apt install certbot python3-certbot-nginx -y
sudo certbot --nginx -d <你的域名>
# 按提示输入邮箱,同意协议,选择是否强制跳转 HTTPS
4. 配置 Nginx 站点
编辑配置文件(路径通常为 /etc/nginx/sites-available/default 或新建一个):
server {
listen 80;
server_name your-domain.com www.your-domain.com;
# 自动重定向到 HTTPS (Certbot 通常会处理)
location / {
return 301 https://$host$request_uri;
}
}
server {
listen 443 ssl http2;
server_name your-domain.com www.your-domain.com;
# 证书路径由 Certbot 自动生成,无需手动填写
ssl_certificate /etc/letsencrypt/live/your-domain.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/your-domain.com/privkey.pem;
# 1. 处理小程序后端 API 请求 (例如 /api 开头)
location /api {
proxy_pass http://127.0.0.1:3000; # 指向 Node.js 后端端口
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
# 解决 WebSocket 问题(如果小程序用 Socket)
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
# 2. 处理 Web 前端静态资源
location / {
root /var/www/html/dist; # 指向你的 Web 前端 dist 目录
index index.html;
try_files $uri $uri/ /index.html; # 防止 Vue/React 刷新 404
}
# 开启 Gzip 压缩
gzip on;
gzip_types text/plain application/javascript application/json;
}
保存后测试配置并重启:
sudo nginx -t
sudo systemctl restart nginx
第五阶段:小程序配置与联调
1. 修改小程序配置
打开小程序开发工具(微信开发者工具):
- 修改
project.config.json中的request相关配置,将baseUrl改为https://你的域名/api。 - 确保合法域名已在微信公众平台后台备案(需在“开发管理 -> 开发设置 -> 服务器域名”中添加
https://你的域名)。
2. 微信后台备案
- 登录 微信公众平台。
- 进入 开发管理 -> 开发设置 -> 服务器域名。
- 在 Request 合法域名 一栏填入
https://你的域名。 - 注意:小程序必须使用 HTTPS,且域名需经过备案(国内服务器)或 ICP 备案。
第六阶段:运维与监控
1. 查看日志
# 查看 Nginx 访问日志
sudo tail -f /var/log/nginx/access.log
# 查看 Nginx 错误日志
sudo tail -f /var/log/nginx/error.log
# 查看 PM2 日志
pm2 logs
2. 定期备份
建议编写简单的 Shell 脚本或使用京东云自带的“快照”功能,每周对数据库和代码目录进行备份。
3. 监控资源
- 在京东云控制台查看 CPU、内存、磁盘使用情况。
- 如果资源紧张,可在轻量服务器内安装
htop实时查看:sudo apt install htop -y htop
常见问题排查
- 502 Bad Gateway:通常是后端服务(PM2/Nginx 上游)挂了,检查
pm2 status或后端端口是否监听。 - 跨域问题:确保后端代码(如 Express/Koa)允许了
Origin: https://你的域名。 - 404 Not Found:检查 Nginx 的
root路径是否正确,或者 Vue/React 项目的base路径配置。 - SSL 过期:Let’s Encrypt 证书每 90 天续期一次,
certbot renew通常会自动执行,也可手动运行测试。
按照以上步骤,你就可以在京东云轻量服务器上完成从环境搭建到小程序上线的全流程。
CLOUD云枢