基于若依开发的微信小程序部署到阿里云需要哪些步骤?

基于若依(RuoYi)框架开发的微信小程序部署到阿里云,本质上是一个“前后端分离”架构的云端落地过程。若依通常提供 Vue 前端和 Spring Boot/Cloud 后端,而微信小程序需要独立的域名、HTTPS 证书以及稳定的云环境支撑。

以下是将若依项目完整迁移至阿里云的核心步骤与关键技术点:

一、前期准备与环境规划

在动手之前,需明确资源规划。若依系统对数据库、缓存和计算资源有明确要求。

  1. 账号与备案:确保拥有阿里云账号。若后端服务部署在国内节点(如杭州、北京),必须完成ICP 备案。小程序接口调用强制要求 HTTPS,且域名必须已备案,否则无法通过微信审核或运行时报错。
  2. 域名解析:购买并配置一个主域名(例如 api.example.com)。在阿里云 DNS 控制台将该域名 A 记录指向即将创建的云服务器公网 IP。
  3. SSL 证书:在阿里云 SSL 证书控制台申请免费或付费的 DV 证书。微信小程序强制要求 HTTPS,且证书必须受信任。

二、后端服务部署(Spring Boot/Cloud)

若依后端通常采用 Maven 构建,建议采用容器化(Docker)或传统虚拟机部署两种方式,推荐 Docker 以获得更好的隔离性和弹性。

方案 A:使用 ECS + Docker(推荐,灵活可控)

  1. 创建实例:在阿里云 ECS 控制台购买一台 CentOS 7/8 或 Ubuntu 服务器。根据若依并发量选择配置(建议至少 2 核 4G,生产环境建议 4 核 8G 以上)。
  2. 安装基础环境
    • 安装 JDK 1.8 或 11(视若依版本而定)。
    • 安装 MySQL 5.7+ 或 8.0。若依对字符集(utf8mb4)和时区有特定要求,初始化时需配置 character-set-server=utf8mb4
    • 安装 Redis(若依依赖 Redis 做缓存和分布式 Session)。
  3. 代码迁移
    • 将本地若依后端代码上传至服务器(使用 Git 拉取或 SCP 传输)。
    • 修改 application.yml 配置文件:
      • 数据库连接地址改为 ECS 内网 IP(若 Redis/MySQL 也在同一 ECS)或阿里云 RDS 的内网地址。
      • Redis 地址同样修正。
      • 关键配置:设置 spring.datasource.url 等参数,并确保 server.port 正确。
  4. 编译打包:执行 mvn clean package -DskipTests 生成 .jar 包。
  5. 启动服务:使用 nohup java -jar ruoyi-admin.jar --spring.profiles.active=prod & 后台启动。
  6. 安全组放行:在阿里云 ECS 安全组中,仅开放必要的端口(如 8080 业务端口,严禁直接开放 3306/6379 给公网,应通过内网访问)。

方案 B:使用云原生产品(更省心)

  • 应用服务 (SAE):适合希望免运维的用户。直接将 Jar 包上传至 SAE,自动处理负载均衡和扩缩容。
  • 云数据库 RDS:强烈建议将数据库从 ECS 迁移至阿里云 RDS 服务,避免数据丢失风险,提升高可用能力。
  • 云缓存 Redis:使用云数据库 Redis 版替代自建 Redis,稳定性更高。

三、前端服务部署(Vue)

若依的前端是静态资源,无需复杂运行时环境,直接托管在对象存储或轻量级 Web 服务器上即可。

  1. 构建产物:在本地开发环境执行 npm run build:prod,生成 dist 目录下的静态文件。
  2. 部署方式选择
    • Nginx 方案(经典):在另一台 ECS 上安装 Nginx,将 dist 目录内容放入 /usr/share/nginx/html,配置 server_name 为小程序域名,开启 Gzip 压缩。
    • OSS + CDN 方案(高性能):将 dist 目录上传至阿里云 OSS Bucket,并在前端代码中将 API 请求地址指向后端域名。配置 CDN 提速该 OSS 站点,可大幅降低首屏加载时间。
  3. 跨域处理:若前端和后端不在同一域名下,需在 Nginx 或后端 Spring Boot 中配置 CORS(Cross-Origin Resource Sharing),允许小程序域名访问。

四、微信小程序配置与上线

这是最容易出错的环节,必须严格匹配。

  1. 修改小程序代码
    • 打开 manifest.json 或网络请求配置文件(通常在 src/utils/request.jsconfig/index.js)。
    • requestBaseURL 修改为阿里云分配的公网域名(如 https://api.example.com)。
    • 注意:此处必须是 HTTPS 协议,且域名不能包含 IP 地址。
  2. 微信公众平台配置
    • 登录 微信公众平台。
    • 进入“开发管理” -> “开发设置”。
    • 配置 服务器域名
      • request 合法域名:填入你的后端域名(如 https://api.example.com)。
      • uploadFile/downloadFile 合法域名:同上。
    • 提交审核前,确保域名已在 ICP 备案系统中生效。
  3. 上传代码:使用微信开发者工具连接阿里云上的 Nginx/OSS 预览,确认无报错后,点击“上传”并提交审核。

五、运维监控与安全加固

部署完成并非结束,生产环境需持续维护。

  1. WAF 防护:若依系统存在 SQL 注入、XSS 等常见漏洞风险。建议在阿里云 WAF(Web 应用防火墙)层面对域名进行防护,开启防爬虫和防攻击策略。
  2. 日志审计:开启阿里云云监控,监控 CPU、内存及磁盘 IO。对于后端日志,建议接入 SLS(日志服务)进行集中采集和分析,排查线上问题。
  3. 备份策略
    • 数据库:开启 RDS 自动备份或手动创建快照。
    • 代码:保留 Git 仓库历史版本。
  4. HTTPS 强制跳转:在 Nginx 中配置 HTTP 自动跳转到 HTTPS,防止中间人攻击。

总结

整个流程的核心在于:域名备案合规性HTTPS 证书配置以及前后端域名的正确映射。若依框架本身逻辑成熟,关键在于将其组件化地拆解到阿里云的各个服务单元(ECS/RDS/OSS/SLS)中,并通过 Nginx 或 CDN 进行流量调度。务必在生产环境关闭调试模式(debug=false),并严格限制安全组端口,确保系统安全。

未经允许不得转载:CLOUD云枢 » 基于若依开发的微信小程序部署到阿里云需要哪些步骤?