将“若依”(RuoYi)微信小程序部署到阿里云服务器,涉及前后端分离架构的部署流程。若依通常提供基于 Spring Boot 的后端服务和 Vue 前端(包括 H5、小程序等),而微信小程序版本通常使用 RuoYi-Weapp 或 RuoYi-Vue 小程序模块。
以下是详细的部署步骤,适用于将 若依微信小程序后端服务 部署到阿里云服务器(Linux 系统),前端小程序通过微信开发者工具上传,后端 API 部署在阿里云 ECS 上。
一、准备工作
1. 购买阿里云服务器(ECS)
- 地区:选择靠近用户的位置(如华南1)
- 系统:推荐 CentOS 7.x / Ubuntu 20.04
- 配置:至少 2核4G(用于运行 Java + MySQL + Redis)
- 安全组:开放以下端口:
80(HTTP)443(HTTPS)3306(MySQL,建议内网或限制IP)6379(Redis,建议内网)8080(Spring Boot 默认端口,可改为 80)
2. 域名(可选但推荐)
- 注册域名并备案(国内服务器必须备案)
- 配置 DNS 解析到 ECS 公网 IP
3. 本地开发环境
- 若依源码(GitHub 下载):https://gitee.com/y_project/RuoYi
- 微信开发者工具(上传小程序)
- IDE:IntelliJ IDEA(后端)、HBuilderX 或微信开发者工具(前端)
二、部署后端服务(RuoYi Spring Boot)
1. 登录阿里云服务器
ssh root@你的公网IP
2. 安装必要环境
安装 Java 8/11
yum install -y java-1.8.0-openjdk
# 或使用 SDKMAN 安装 Oracle JDK
安装 Maven
yum install -y maven
安装 MySQL 5.7/8.0
# CentOS 示例
yum install -y mysql-server
systemctl start mysqld
systemctl enable mysqld
# 登录并设置密码
mysql -u root -p
ALTER USER 'root'@'localhost' IDENTIFIED BY '你的密码';
CREATE DATABASE ruoyi DEFAULT CHARSET utf8mb4;
安装 Redis(可选,用于缓存)
yum install -y redis
systemctl start redis
systemctl enable redis
3. 上传并构建若依后端代码
方式一:本地打包上传
# 在本地执行
mvn clean package -DskipTests
将生成的 ruoyi-admin/target/ruoyi-admin.jar 上传到服务器:
scp ruoyi-admin.jar root@你的IP:/root/ruoyi/
方式二:服务器拉取代码构建
git clone https://gitee.com/y_project/RuoYi.git
cd RuoYi
mvn clean package -DskipTests
4. 修改配置文件 application.yml
编辑 ruoyi-admin/src/main/resources/application.yml(或上传后的 jar 外部配置):
spring:
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://localhost:3306/ruoyi?useUnicode=true&characterEncoding=utf8&serverTimezone=GMT%2B8
username: root
password: 你的密码
redis:
host: localhost
port: 6379
database: 0
⚠️ 注意:如果使用外部 Redis/MySQL,修改 host 为公网或内网 IP,并开放安全组。
5. 启动后端服务
nohup java -jar ruoyi-admin.jar > ruoyi.log 2>&1 &
6. 验证服务
访问:
http://你的IP:8080/
默认账号:admin / admin123
三、配置 Nginx 反向X_X(推荐)
1. 安装 Nginx
yum install -y nginx
systemctl start nginx
systemctl enable nginx
2. 配置 Nginx(/etc/nginx/conf.d/ruoyi.conf)
server {
listen 80;
server_name yourdomain.com; # 替换为你的域名或IP
location / {
proxy_pass http://localhost:8080;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
# 如果有文件上传,可X_X静态资源
location /profile {
alias /root/ruoyi/upload;
}
}
3. 重载 Nginx
nginx -t
systemctl reload nginx
四、微信小程序前端配置
1. 修改小程序请求域名
在 project.config.json 或 utils/request.js 中修改 API 地址:
const baseUrl = 'https://yourdomain.com'; // 必须是 HTTPS 域名
2. 配置微信小程序合法域名
登录 微信公众平台
- 开发管理 → 开发设置 → 服务器域名
- 添加
request合法域名:https://yourdomain.com
⚠️ 必须使用 HTTPS,可使用阿里云免费 SSL 证书 + Nginx 配置。
3. 上传小程序
使用微信开发者工具上传代码,提交审核。
五、配置 HTTPS(重要)
使用阿里云免费 SSL 证书
- 进入【数字证书管理服务】申请免费证书
- 下载 Nginx 版证书
- 配置 Nginx:
server {
listen 443 ssl;
server_name yourdomain.com;
ssl_certificate /path/to/your_domain.crt;
ssl_certificate_key /path/to/your_domain.key;
location / {
proxy_pass http://localhost:8080;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
六、常见问题排查
| 问题 | 解决方案 |
|---|---|
| 无法访问 8080 | 检查安全组是否开放端口 |
| MySQL 连接失败 | 检查 MySQL 是否允许远程连接(或使用 localhost) |
| 微信提示域名不合法 | 必须配置 HTTPS,且域名已备案 |
| Redis 连接超时 | 检查 Redis 是否启动,bind 配置是否为 0.0.0.0 |
七、优化建议
- 使用 Supervisor 或 systemd 管理 Java 进程
- 使用 Jenkins/GitLab CI 实现自动化部署
- 数据库定期备份
- 使用阿里云 RDS 和云数据库 Redis,更稳定
总结
部署流程:
- 阿里云 ECS 安装 Java、MySQL、Redis、Nginx
- 构建并运行 RuoYi 后端 jar 包
- 配置 Nginx 反向X_X + HTTPS
- 修改小程序请求地址为你的域名
- 微信平台配置合法域名
- 上传并发布小程序
如需更详细的脚本或自动化部署方案,可提供你的若依版本(如 RuoYi-Vue、RuoYi-Cloud),我可以给出更具体的配置。
CDNK博客