部署springboot+vue项目文档(若依ruoyi项目部署步骤)

摘要:
1: 部署Linux+nginx部署背景代码1.1因为我使用了idea工具进行开发,所以终端中的mvnclean包生成了相应的jar包。这个jar包可以在相应文件所在目录的目标中找到。linux服务器需要加载redis和nginx。redis存储缓存数据,nginx用于代理前端和后端服务。打包vue项目并将dist文件复制到tomcat的webapps目录中。

摘自:https://blog.csdn.net/Dreamboy_w/article/details/104389797

部署springboot+vue项目文档(若依ruoyi项目部署步骤)
一:部署linux + nginx
二:部署windows + tomcat(无nginx)
三:解决调用第三方api如百度地图api所存在的跨域问题
最近部署若依项目,一直部署失败,多亏有好人将这篇文章相赠,特地分享出来供大家学习参考,希望大家共同进步。

一:部署linux + nginx
部署后台代码
1.1 由于本人采用的是idea工具开发,所以在terminal中mvn clean package生成对应的jar包,此jar包可去对应文件所在目录的target查找。
1.2 将jar复制到linux之中。

部署前端代码
2.1 使用npm run build:prod --report将前端项目打包,将会在前端目录下生成一个dist文件夹。
2.2 同样将dist复制到linux之中。

linux服务器中需要装载redis以及nginx,redis是存放缓存数据,nginx是用于代理前后端服务。
3.1 安装redis并启动。
3.2 安装nginx并修改相关配置。

找到nginx所在目录,并修改conf/nginx.conf文件,修改如下图:

代码如下:

worker_processes 1;


events {
worker_connections 1024;
}


http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;


server {
listen 80; # 监听的端口
server_name 自己的服务器地址; # 域名或ip

location / { # 访问路径配置
root /usr/local/ruoyi/dist/;# 根目录
try_files $uri $uri/ /index.html;
index index.html index.htm; # 默认首页
}

location /prod-api/ {
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;
proxy_pass http://localhost:8080/;
}


}

}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
启动jar包,并启动nginx,在windows浏览器中直接输入ip即可访问。
4.1 jar后台启动,后台启动的话可以进行其他操作,否则将无法进行其他操作。
nohup java -jar jarName >msg.log 2>&1 &
msg.log文件是在输入上一行启动命令的当前目录下

有的小伙伴可能第一次打包放上去没问题,但是后期修改了一些文件或者菜单等,再部署上去可能会遇到菜单打不开之类的问题


不要慌,只要修改vue.config.js文件里面的配置就好,如下图,去掉/之前的.即可

二:部署windows + tomcat(无nginx)
修改pom文件,改jar为war:


打包成war包之后直接复制到windows中的tomcat的webapps目录下,并修改名称为prod-api,类似部署在linux中需要修改nginx.conf的配置。

将vue项目打包并把dist文件复制到tomcat的webapps目录下。

修改tomcat目录下的conf文件夹下的service.xml:
4.1 启动端口为后台的启动端口
4.2 在host节点下添加对应的访问路径配置代码

<Context path="/" docBase="dist的绝对路径(也可以写相对于webapps的路径)" reloadable="true" crossContext="true"></Context>
1
如果不添加此处代码,登录是可以的,但是登陆之后是空白页,因为在本地的运行的项目是类似ip:端口/router地址的,如果不修改,将会导致前面所说的问题。(不知道说的对不对,个人猜想)

启动tomcat,输入ip:端口即可。
以上操作之后刷新页面的话会存在404错误,所以需要在dist目录的文件夹下新建WEB-INF文件夹,并在里面添加web.xml文件:

web.xml文件代码如下:
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
version="3.1" metadata-complete="true">
<display-name>Router for Tomcat</display-name>
<error-page>
<error-code>404</error-code>
<location>/index.html</location>
</error-page>
</web-app>
1
2
3
4
5
6
7
8
9
10
11
12
三:解决调用第三方api如百度地图api所存在的跨域问题

————————————————
版权声明:本文为CSDN博主「Dreamboy_w」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/Dreamboy_w/article/details/104389797

免责声明:文章转载自《部署springboot+vue项目文档(若依ruoyi项目部署步骤)》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇java实现word转pdf文件(高效不失真)MongoDB 查看集合的统计信息下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

Nginx配置跨域支持功能

涉及到多重跨域的话,项目访问会出现无法跨域的报错 即Java代码部分,需要进行注释掉: //@CrossOrigin(allowCredentials = "true") 和下面的nginx设置同时允许开启了跨域功能  配置示例: add_header Access-Control-Allow-Origin *; add_...

Nginx MIME类型配置

本文记录Nginx静态web服务器中MIME类型的配置项。 1. MIME type与文件扩展映射 语法:type{...}; 配置块:http、server、location 定义MIME type到文件扩展名映射时,多个扩展名可以映射到同一个MIME type。 types { text/html html; text/html con...

nginx + ffmpeg

第一种方案:ffmpeg+nginx 新的ffmpeg已经支持HLS。(本人也参与了代码供献,给自己做个广告:)) 点播: 生成hls分片: ffmpeg -i <媒体文件> -c:v libx264 -c:a aac -f hls /usr/local/nginx/html/test.m3u8 直播: ffmpeg -i udp://@:12...

四十二、LAMP与LNMP web架构深度优化实战-第一部

1.nginx.conf配置文件基本参数优化 1.1 隐藏nginx header内版本号信息 一些特定的系统及服务漏洞一般都和特定的软件版本号有关,我们应尽量隐藏服务器的敏感信息(软件名称及版本等信息),这样黑客无法猜到有漏洞的服务是否是对应服务的版本,从而确保web服务最大的安全。 [root@djw1 ~]# curl -I 192.168.0.10...

nginx配置使用

nginx 安装(阿里云服务器)   1,nginx 安装 yum -y install gcc automake autoconf libtool make yum install gcc gcc-c++ yum install -y lrzsz cd /usr/local/src wget ftp://ftp.csx.cam.ac.uk/pub/sof...

SpringBoot2.x 整合Spring-Session实现Session共享

SpringBoot2.x 整合Spring-Session实现Session共享 1.前言 发展至今,已经很少还存在单服务的应用架构,不说都使用分布式架构部署, 至少也是多点高可用服务。在多个服务器的情况下,Seession共享就是必须面对的问题了。 解决Session共享问题,大多数人的思路都是比较清晰的, 将需要共享的数据存在某个公共的服务中,如缓存...