阿里云服务器ESC部署小程序的完整指南
结论先行:在阿里云ESC服务器上部署小程序主要涉及环境配置、代码上传、域名解析和HTTPS设置等步骤,核心在于确保服务器环境兼容性和正确配置安全访问。以下是详细操作流程:
一、前期准备
-
购买阿里云ESC服务器
- 选择适合的配置(建议1核2G起步,根据访问量调整)
- 操作系统推荐:CentOS 7.x或Ubuntu 20.04(兼容性较好)
-
域名与备案
- 注册域名(需完成ICP备案,阿里云提供备案服务)
- 域名解析到服务器IP(通过阿里云DNS控制台)
-
服务器基础环境配置
- 安装必要工具(如Git、Nginx、Node.js等):
# CentOS示例 yum install -y git nginx # Node.js安装(推荐使用nvm) curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash nvm install 16
- 安装必要工具(如Git、Nginx、Node.js等):
二、小程序后端部署
-
上传代码到服务器
- 通过Git克隆项目或使用SFTP工具(如FileZilla)上传代码:
git clone https://github.com/your-project.git cd your-project npm install
- 通过Git克隆项目或使用SFTP工具(如FileZilla)上传代码:
-
配置生产环境
- 修改配置文件(如数据库连接、API密钥等):
# .env示例 DB_HOST=localhost DB_USER=root DB_PASSWORD=your_password
- 修改配置文件(如数据库连接、API密钥等):
-
启动服务
- 使用PM2管理Node进程(避免服务中断):
npm install -g pm2 pm2 start app.js --name "mini-program-api" pm2 save pm2 startup
- 使用PM2管理Node进程(避免服务中断):
三、前端部署与HTTPS配置
-
Nginx反向X_X
- 配置Nginx转发请求到后端(示例配置):
server { listen 80; server_name your-domain.com; location / { proxy_pass http://localhost:3000; # 后端服务端口 proxy_set_header Host $host; } }
- 配置Nginx转发请求到后端(示例配置):
-
启用HTTPS(必需)
- 小程序要求域名必须为HTTPS,可通过阿里云免费SSL证书实现:
- 在阿里云SSL证书服务中申请免费证书。
- 下载证书文件,上传到服务器(如
/etc/nginx/cert/
)。 - 修改Nginx配置:
server { listen 443 ssl; server_name your-domain.com; ssl_certificate /etc/nginx/cert/your-domain.pem; ssl_certificate_key /etc/nginx/cert/your-domain.key; # 其他配置同上 }
- 小程序要求域名必须为HTTPS,可通过阿里云免费SSL证书实现:
四、小程序配置与联调
-
小程序后台设置
- 登录微信公众平台,配置服务器域名(需HTTPS):
request合法域名
:填写你的API域名(如https://api.your-domain.com
)。uploadFile合法域名
:同上。
- 登录微信公众平台,配置服务器域名(需HTTPS):
-
测试与监控
- 使用微信开发者工具联调接口。
- 通过阿里云云监控观察服务器资源使用情况(CPU、内存、带宽)。
五、常见问题与优化
- 问题1:跨域错误
- 解决方案:Nginx配置中添加CORS头:
add_header 'Access-Control-Allow-Origin' '*';
- 解决方案:Nginx配置中添加CORS头:
- 问题2:性能瓶颈
- 优化建议:
- 启用CDN提速静态资源。
- 数据库查询优化(索引、缓存)。
核心总结:
成功部署的关键是正确配置Nginx和HTTPS,同时确保小程序后台域名与服务器一致。如果流量增长,可结合阿里云SLB和RDS实现高可用架构。