部署springboot+vue项⽬⽂档(若依ruoyi项⽬部署步骤)
部署springboot+vue项⽬⽂档(若依ruoyi项⽬部署步骤)
最近部署若依项⽬,⼀直部署失败,多亏有好⼈将这篇⽂章相赠,特地分享出来供⼤家学习参考,希望⼤家共同进步。
⼀:部署linux + nginx
1. 部署后台代码
1.1 由于本⼈采⽤的是idea⼯具开发,所以在terminal中mvn clean package⽣成对应的jar包,此jar包可去对应⽂件所在⽬录的
target查。
1.2 将jar复制到linux之中。
2. 部署前端代码
2.1 使⽤npm run build:prod --report将前端项⽬打包,将会在前端⽬录下⽣成⼀个dist⽂件夹。
2.2 同样将dist复制到linux之中。
3. linux服务器中需要装载redis以及nginx,redis是存放缓存数据,nginx是⽤于代理前后端服务。
3.1 安装redis并启动。
3.2 安装nginx并修改相关配置。
到nginx所在⽬录,并修改f⽂件,修改如下图:
代码如下:
worker_processes 1;
events {
worker_connections 1024;
}
nginx部署前端项目http {
pes;
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 localhost:8080/;
}
}
}
4. 启动jar包,并启动nginx,在windows浏览器中直接输⼊ip即可访问。
4.1 jar后台启动,后台启动的话可以进⾏其他操作,否则将⽆法进⾏其他操作。
nohup java -jar jarName >msg.log 2>&1 &
msg.log⽂件是在输⼊上⼀⾏启动命令的当前⽬录下
5. 有的⼩伙伴可能第⼀次打包放上去没问题,但是后期修改了⼀些⽂件或者菜单等,再部署上去可能会遇到菜单打不开之类的问题
不要慌,只要修改fig.js⽂件⾥⾯的配置就好,如下图,去掉/之前的.即可
⼆:部署windows + tomcat(⽆nginx)
1. 修改pom⽂件,改jar为war:
2. 打包成war包之后直接复制到windows中的tomcat的webapps⽬录下,并修改名称为prod-api,类似部署在linux中需要修改
3. 将vue项⽬打包并把dist⽂件复制到tomcat的webapps⽬录下。
4. 修改tomcat⽬录下的conf⽂件夹下的l:
4.1 启动端⼝为后台的启动端⼝
4.2 在host节点下添加对应的访问路径配置代码
<Context path="/"docBase="dist的绝对路径(也可以写相对于webapps的路径)"reloadable="true"crossContext="true"></Context>
如果不添加此处代码,登录是可以的,但是登陆之后是空⽩页,因为在本地的运⾏的项⽬是类似ip:端⼝/router地址的,如果不修改,将会导致前⾯所说的问题。(不知道说的对不对,个⼈猜想)
5. 启动tomcat,输⼊ip:端⼝即可。
6. 以上操作之后刷新页⾯的话会存在404错误,所以需要在dist⽬录的⽂件夹下新建WEB-INF⽂件夹,并在⾥⾯添加l⽂件:
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="/xml/ns/javaee"
xsi="/2001/XMLSchema-instance"
schemaLocation="/xml/ns/javaee
/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>
三:解决调⽤第三⽅api如百度地图api所存在的跨域问题
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论