news 2026/4/14 19:22:44

Linux环境下前后端分离项目(Spring Boot + Vue)手动部署全流程指南

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Linux环境下前后端分离项目(Spring Boot + Vue)手动部署全流程指南

Linux 环境下前后端分离项目手动部署指南 (以若依框架为例)

本指南详细记录了在 Linux 服务器上部署前后端分离项目(Spring Boot + Vue)的完整流程,涵盖环境准备、后端部署、前端部署及 Nginx 配置等核心步骤。

0. 环境准备

在开始部署前,请确保服务器已安装以下基础环境:

  • Redis: 缓存服务
  • Nginx: 反向代理与静态资源服务器
  • JDK: Java 运行环境 (建议 JDK 1.8+)
  • MySQL: 数据库服务

1. 后端部署 (Spring Boot)

1.1 源码打包

在本地开发环境中,使用 Maven 对后端项目进行打包。

  • 操作:运行 Maven 的package命令。
  • 产物:在target目录下生成.jar文件(例如ruoyi-admin.jar)。

1.2 上传程序

将打包好的 jar 包上传至服务器指定目录。建议创建规范的目录结构以便管理。

  • 推荐路径示例/home/www/project_name/server/
  • 操作示意

1.3 启动服务

使用nohup命令后台启动 Java 程序,避免关闭终端后服务停止。

详细启动脚本参考:![[linux运行jar包]]

常用启动命令:

# 基础启动命令 (根据实际 jar 包名称修改)# > temp.txt 表示将日志输出重定向到 temp.txt,& 表示后台运行nohupjava-jarruoyi-admin.jar>temp.txt&

1.4 进程管理与验证

查看 Java 进程:

# 检查是否有 java 进程在运行ps-ef|grepjava

关闭进程:
如果需要重启或停止服务,先查询进程号 (PID),然后执行 kill 命令。

# -9 表示强制终止kill-9<进程号>

[!IMPORTANT]网络安全配置

  1. 云服务器安全组:需在云厂商控制台开放后端端口(如8080)。
  2. Linux 防火墙:如果服务器开启了firewalld,也需放行对应端口。

部署验证:
后端启动成功后,Swagger 或接口文档应可访问。


2. 前端部署 (Vue)

2.1 项目打包

在本地前端项目根目录下,构建生产环境代码。

# 构建生产环境 (根据 package.json 中的脚本名称调整)npmrun build

打包结果:

  • 生成dist文件夹。
  • 包含index.htmlstatic资源。


2.2 上传静态资源

将生成的dist文件夹上传至服务器。

[!NOTE]目录规范建议
建议重命名dist文件夹以区分不同项目或端(如parking-back),不要直接使用默认的dist名称。

  • 上传路径示例/home/www/parking-back/parking-back

3. Nginx 配置 (核心步骤)

Nginx 负责处理静态资源请求和将 API 请求反向代理到后端。

3.1 修改配置文件

编辑 Nginx 配置文件(通常位于/usr/local/nginx/conf/nginx.conf/etc/nginx/nginx.conf)。

配置示例与详解:

server { # 1. 监听端口 (前端访问入口) # 注意:此端口(如9090)同样需要在安全组和防火墙中开放 listen 9090; # 2. 服务器域名或IP server_name localhost; # 3. 前端静态资源配置 location / { # 指定前端文件上传的绝对路径 root "/home/www/parking-back/parking-back"; # 默认首页 index index.html index.htm; # 4. 解决 Vue History 模式刷新 404 问题 (关键) # 尝试寻找 $uri,找不到找 $uri/,再找不到跳转 index.html try_files $uri $uri/ /index.html; } # 5. 后端接口反向代理配置 # 拦截以 /prod-api/ 开头的请求 location /prod-api/ { # 代理转发到后端服务地址 # 注意:proxy_pass 结尾带 / 会去除 /prod-api/ 前缀 proxy_pass http://localhost:8080/; # 传递真实客户端 IP 等头部信息 proxy_set_header Host $http_host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header REMOTE-HOST $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } # 错误页面配置 error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } }

3.2 重启 Nginx

修改配置文件后,必须重载或重启 Nginx 才能生效。

# 进入 Nginx sbin 目录 (根据实际安装位置调整)cd/usr/local/nginx/sbin# 检查配置文件语法是否正确./nginx-t# 重载配置文件 (推荐,无需停止服务)./nginx-sreload

4. 最终验证

在浏览器中访问http://服务器IP:前端端口(例如http://x.x.x.x:9090)。
如果能正常显示页面且验证码/数据加载正常,说明前后端部署及 Nginx 代理配置成功。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/11 10:20:27

django宁波五金电商网络营销的可视化研究爬虫可视化大屏-

文章目录系统截图项目简介大数据系统开发流程主要运用技术介绍爬虫核心代码展示结论源码文档获取定制开发/同行可拿货,招校园代理 &#xff1a;文章底部获取博主联系方式&#xff01;系统截图 django宁波五金电商网络营销的可视化研究爬虫可视化大屏- 项目简介 本次研究…

作者头像 李华
网站建设 2026/4/14 4:06:11

基于Qt的视觉工具连线Demo源码剖析

基于qt的视觉工具连线demo源码&#xff0c;支持连线&#xff0c;单选删除&#xff0c;多选删除&#xff0c;可以保存加载在开发图形化交互工具时&#xff0c;实现元素间的连线以及相关的增删改存功能是常见需求。今天咱们就来聊聊基于Qt的视觉工具连线Demo源码&#xff0c;这个…

作者头像 李华
网站建设 2026/4/15 15:58:45

电力系统暂态稳定性仿真:Matlab/Simulink 实战

电力系统暂态稳定性仿真 matlab/simulink 仿真模型设计报告在电力系统的研究与设计中&#xff0c;暂态稳定性是一个关键的考量因素。它关乎在系统遭受大扰动&#xff08;如短路故障、突然甩负荷等&#xff09;后&#xff0c;能否恢复到稳定运行状态。Matlab/Simulink 为我们提供…

作者头像 李华
网站建设 2026/4/12 22:30:21

10个AI论文优化工具,准确复现数学建模论文并改进表达

AI工具推荐的核心对比可从以下维度快速筛选&#xff1a;10款主流工具在核心功能、响应速度及跨平台兼容性上的差异已整理为简明对比表&#xff0c;特别针对Java毕业论文场景优化了可操作性&#xff0c;便于研究者高效匹配需求。 工具名称 主要用途 处理时间 适配平台 关键优…

作者头像 李华