ruoyi 多项目同一端口nginx配置

server {
listen 80;
server_name 域名/ip;

    location  / {   #项目1
    root    /home/work/dist;
    index  index.html index.htm;
    try_files $uri $uri/ /index.html;
    }

    location /admin {    #项目2
    alias   /home/work/dist2/;
    index  index.html index.htm;
    try_files $uri $uri/ @router;
    }

    location @router {
            rewrite ^.*$ /admin/index.html last;
    }

	# 后端
    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/;
            }

	# 后端
    location /dev-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/;
                    }

	# 图片
    location /img {
        alias   /home/work/temp_img/;
        autoindex on;
    }

注_前端需修改2处配置:
1. vue.config.js配置改为publicPath: process.env.NODE_ENV === "production" ? "/admin/" : "/",
2. src/router/index.js中改为
 export default new Router({
  mode: 'history', // 去掉url中的#
  scrollBehavior: () => ({ y: 0 }),
  base:'/admin/',
  routes: constantRoutes
})

}


版权声明:本文为q18777777777原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。