栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

SpringBoot+Vue前后端分离跨域项目的宝塔面板部署上线(全网最详细)

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

SpringBoot+Vue前后端分离跨域项目的宝塔面板部署上线(全网最详细)

基于 Spring Boot + Vue 的前后端分离项目的部署方式主要有如下两种:
前后端一起部署:将 Vue 项目打包后的dist文件放到 Spring Boot 项目的资源目录下,然后在服务器上部署 Spring Boot 项目即可,终究还是后端项目。
前后端单独部署:将 Spring Boot 项目打包后部署到服务器,再将 Vue 项目打包部署至服务器,最后配置 Nginx 解决请求跨域时的端口转发问题。
第一种方式较容易,也无需进行服务器跨域的相关配置,都使用的是Tomcat服务器进行部署。适合小型项目,如果部署的项目比较大,会造成Tomcat服务器的压力,响应速度也变慢。
第二种方式稍微复杂些,需要在 Nginx 下配置跨域时的端口转发。本文将介绍后者(使用宝塔可视化式部署)。在该方式下,后端 Spring Boot 使用内嵌的 Tomcat 运行,前端 Vue 则需要借助 Nginx 运行(需完成跨域时的请求端口转发)。所以部署前需要在服务器上安装 Nginx 环境。

之前在B站跟着博主写了一个前后端分离的项目,前端工程使用Vue-cli脚手架,后端工程使用SpringBoot,前端和后端分别为8087和8088端口,需跨域配置。自己踩了很多坑,研究了几天才部署成功。现将经验分享。

后端打包

后端项目打包之前,需要将某些配置改为服务器的配置。
将允许跨域设置为服务器IP+端口

将数据库配置为服务器IP地址,并且设置后端项目上下文如/api

通过Maven的package打包为jar包

用xshell工具上传到服务器的/www/wwwroot下的位置,

至此,后端打包完成。

前端打包

请求加上前缀
还记得我们在SpringBoot中加了/api的应用上下文吗?现在将前端所有向后端URL请求中加上/api的前缀。


配置转发代理

如图分别配置如下

在前端终端输入 npm run build
将打包生成的dist文件下的static静态文件,和index.html上传到Linux服务器上。

上传路径如下。

部署后端

在宝塔上添加JAVA项目
jar路径选择上传jar包的路径
端口选择后端的8088端口
保存配置

后端部署成功时,可以用postman测一下接口。可以请求成功**,后端部署完毕。**

部署前端

使用nginx部署前端项目,如果没有按照nginx可以去宝塔面板上安装一个。
打开nginx的配置文件,目录在/www/server/nginx/conf/ 下的nginx.conf

只需配置3项
1 端口设置为与前端端口一致
2 root+静态资源的项目路径
3 配置location 以及代理的路径
nginx端口设置为与前端一致
root选择前端项目打包后的位置
在location中配置访问的 /api 路径,nginx就可以帮我们反向代理到请求的服务器地址了。实现了跨域访问。
前后端部署结束

测试

访问一下项目,服务器IP+端口。

能请求到后端数据,部署成功

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/866561.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号