美文网首页
Nginx 配置多个Vue项目

Nginx 配置多个Vue项目

作者: R_X | 来源:发表于2020-11-17 16:07 被阅读0次

    背景:同一个域名下,配置多个Vue 项目,通过location来区分。

    vue项目使用 vue-cli 来生成。

    一、Vue 项目配置

    有两个项目:
    第一个:打包到 `badudu`目录中;
    第二个:打包到 `management` 目录中;
    

    注意:第二个项目需要需要做以下修改,然后再进行打包。第一个项目啥都不用动,就用默认的配置就行。

    • 1、vue.config.js 中,添加:publicPath: '/management' 配置项
    • 2、router.js 中,添加: base: '/management
    // vue.config.js
    module.exports = {
        lintOnSave: false,
        productionSourceMap: false,
        publicPath: '/management',
        configureWebpack: config => {
            console.log(process);
            if (process.env.NODE_ENV === 'production') {
                return {
                };
                // 为生产环境修改配置...
            } else {
                // 为开发环境修改配置...
            }
        }
    };
    
    // src/router.js
    import Vue from 'vue';
    import Router from 'vue-router';
    import routes from './routes.js';
    
    Vue.use(Router);
    const router = new Router({
        base: '/management',
        mode: 'history',
        routes
    });
    
    export default router;
    

    对第二个项目打包,打完了以后,看一下 dist 目录中的 index.html文件,会发现引入文件时,给加上了 /management/ 这个前缀,这个到时候要与Nginxlocation配置相对应。

    image.png

    二、 Nginx 配置

    server {
        listen       80;
        server_name   www.badudu.cn;
       # 项目二的配置
        location /management/ {
            alias /home/mall/management/;  # 这里注意要用  `alias` 
            index  index.html index.htm;
            try_files $uri $uri/ /management/index.html;
        }
       # 项目一的配置
         location / {
            root /home/mall/badudu/;
            index  index.html index.htm;
            try_files $uri $uri/ /index.html;
        }
    }
    
    

    相关文章

      网友评论

          本文标题:Nginx 配置多个Vue项目

          本文链接:https://www.haomeiwen.com/subject/rvnxiktx.html