ruoyi-vue如何部署在根目录下的多级目录
1、找到vue.config.js
module.exports = { // 部署生产环境和开发环境下的URL。 // 默认情况下,Vue CLI 会假设你的应用是被部署在一个域名的根路径上 // 例如 https://www.ruoyi.vip/。如果应用被部署在一个子路径上,你就需要用这个选项指定这个子路径。例如,如果你的应用被部署在 https://www.ruoyi.vip/admin/,则设置 baseUrl 为 /admin/。 publicPath: process.env.NODE_ENV === "production" ? "/" : "/micia/", // 在npm run build 或 yarn build 时 ,生成文件的目录名称(要和baseUrl的生产环境路径一致)(默认dist) outputDir: 'dist', // 用于放置生成的静态资源 (js、css、img、fonts) 的;(项目打包之后,静态资源会放在这个文件夹下) assetsDir: 'static',
2、找到router/index.js
export default new Router({ base:'micia', mode: 'hash', // 去掉url中的# scrollBehavior: () => ({ y: 0 }), routes: constantRoutes })
3、配置登出接口
修改/src/layout/componets/Navbar.vue文件里的logout()方法
methods: { toggleSideBar() { this.$store.dispatch('app/toggleSideBar') }, async logout() { this.$confirm('确定注销并退出系统吗?', '提示', { confirmButtonText: '确定', cancelButtonText: '取消', type: 'warning' }).then(() => { this.$store.dispatch('LogOut').then(() => { // location.href = '/index'; location.href = '/admin' }) }).catch(() => {}); } }
Nginx配置
一级域名一般部署的是公司官网website-dist,二级域名部署后台项目ruoyi-dist。
server { listen 80; server_name localhost; charset utf-8; location / { root /root/website/website-dist; try_files $uri $uri/ /index.html; index index.html index.htm; } location /admin { alias /home/ruoyi/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://127.0.0.1:9004/; } }