Linux系统部署Springboot+vue前后端分离项目

简介: 前后端分离项目部署,springboot+vue+宝塔面板

一、VUE项目打包

首先简单介绍一下我使用的前后端项目都是人人开源的项目。可自行下载。

打开VSCode的终端,运行如下命令

npm run build

这个命令会将vue项目的所有代码转换为css、js和html格式,以便能在大部分的浏览器上运行。

image.png

运行成功后,会在项目中生成dist文件夹,备用。

image.png

(PS:项目最好使用Node版本为12.xx.xx的版本,最新的版本和低于12版本的可能会出现一些意想不到的问题,如:打包时候会报找不到python/vscode、打包好后前端页面空白加载不到静态文件等,试了网上的很多方法,都不管用,果断换了个版本试了试-。-,很顺利,直接一次性成功。)

二、Springboot项目打包

1、pom文件引入打包依赖

<plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><version>2.3.4.RELEASE</version></plugin>

image.png

2、Idea的Maven管理

找到要打包的项目,双击package

image.png

注:如果不是用的idea,可以直接使用mvn package命令进行打包

打包成功后,在对应路径找到打包好的jar包。

image.png

三、服务器部署

1、宝塔面板

我的服务器已经提前安装好了宝塔面板,可以帮助你傻瓜式安装一些linux必备应用。宝塔安装方法

image.png

2、上传文件

  • 上传后端项目打包好的jar
  • 上传前端打包好的dist文件夹

利用SSH工具上传(WinSCP/FinalShell/Xshell等等网上很多),此处我上传到了服务器的/home/project文件夹下

image.png

3、Nginx配置

宝塔面板插件安装上Nginx后,在首页点击Nginx,找到配置修改,修改内容如下

image.png

server
    {
        listen 80;
        server_name 服务器IP;
        index index.html index.htm;
# 允许跨域请求的“域”        add_header 'Access-Control-Allow-Origin''*';
# 允许客户端提交Cookie        add_header 'Access-Control-Allow-Credentials''true';
# 允许客户端的请求方法        add_header 'Access-Control-Allow-Methods''GET, POST, OPTIONS, DELETE, PUT';
# 允许客户端提交的的请求头        add_header 'Access-Control-Allow-Headers''Origin, x-requested-with, Content-Type, Accept, Authorization';
# 允许客户端访问的响应头        add_header 'Access-Control-Expose-Headers''Cache-Control, Content-Language, Content-Type, Expires, Last-Modified, Pragma';
        location / {
          root  /home/project/dist;
          index index.html;
        }
        location /study{ #后台          proxy_set_header Host $host;
          proxy_set_header X-Real-IP $remote_addr;
          proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
          proxy_set_header X-Forwarded-Proto $scheme;
          proxy_pass   http://服务器IP:jar包的端口/项目名称/;
        }
#error_page   404   /404.html;        include enable-php.conf;
        access_log  /www/wwwlogs/access.log;
    }
  include /www/server/panel/vhost/nginx/*.conf;
}

修改完成后,点击服务->重载配置。

4、服务后台启动

终端,输入如下命令,即可后台启动

nohup java -jar /home/project/renren-fast.jar > /dev/null 2> /dev/null &

image.png

启动成功后,输入如下命令查看是否启动成功

ps-ef | grep java

出现如图所示,表示成功启动

image.png

四、访问

快打开浏览器地址栏输入自己的服务器ip试一下吧(如果配置了域名,可直接使用域名访问)

image.png


目录
相关文章
|
2月前
|
监控 安全 JavaScript
2025基于springboot的校车预定全流程管理系统
针对传统校车管理效率低、信息不透明等问题,本研究设计并实现了一套校车预定全流程管理系统。系统采用Spring Boot、Java、Vue和MySQL等技术,实现校车信息管理、在线预定、实时监控等功能,提升学校管理效率,保障学生出行安全,推动教育信息化发展。
|
2月前
|
JavaScript Java 关系型数据库
基于springboot的高校运动会系统
本系统基于Spring Boot、Vue与MySQL,实现高校运动会报名、赛程安排及成绩管理的全流程信息化,提升组织效率,杜绝信息错漏与冒名顶替,推动体育赛事智能化发展。
|
2月前
|
JavaScript 安全 Java
基于springboot的大学生兼职系统
本课题针对大学生兼职信息不对称、权益难保障等问题,研究基于Spring Boot、Vue、MySQL等技术的兼职系统,旨在构建安全、高效、功能完善的平台,提升大学生就业竞争力与兼职质量。
|
2月前
|
JavaScript Java 关系型数据库
基于springboot的美食城服务管理系统
本系统基于Spring Boot、Java、Vue和MySQL技术,构建集消费者服务、商家管理与后台监管于一体的美食城综合管理平台,提升运营效率与用户体验。
|
2月前
|
Java 关系型数据库 MySQL
基于springboot的网咖网吧管理系统
本文探讨了基于Java、MySQL和SpringBoot的网吧管理系统的设计与实现。随着信息化发展,传统管理方式难以满足需求,而该系统通过先进技术提升管理效率、保障数据安全、降低运营成本,具有重要意义。
|
2月前
|
JavaScript Java 关系型数据库
基于springboot的摄影师分享交流社区系统
本系统基于Spring Boot与Vue构建摄影师分享交流平台,旨在打造专业社区,支持作品展示、技术交流与合作互动。采用Java、MySQL等成熟技术,提升摄影爱好者创作水平,推动行业发展。
|
JavaScript Java 关系型数据库
Springboot+vue打包部署到线上服务器
整合springboot+vue的项目,打包成jar包到线上服务器运行
Springboot+vue打包部署到线上服务器
|
3月前
|
JavaScript
Vue中如何实现兄弟组件之间的通信
在Vue中,兄弟组件可通过父组件中转、事件总线、Vuex/Pinia或provide/inject实现通信。小型项目推荐父组件中转或事件总线,大型项目建议使用Pinia等状态管理工具,确保数据流清晰可控,避免内存泄漏。
316 2
|
2月前
|
缓存 JavaScript
vue中的keep-alive问题(2)
vue中的keep-alive问题(2)
297 137

热门文章

最新文章