情景介绍

 服务器上80端口已部署一套vue项目,现在乃至未来还可能要部署n个前端项目,而已部署的项目的nginx的配置不能修改


项目配置

 假设需要部署的第二个vue项目是放在服务器的  “project” 目录下


 打包环境:


    1、os:Windows10


    2、node: v12.19.0


    3、vue-cli3


    4、vue:2.3.10


      第一步   将vue.config.js里的 publicPath 设置为‘'/project/'


   


publicPath: '/project/'

 第二步  将路由的base也设置为 “/project/”


 


1 const createRouter = () => new Router({

2   mode: 'history',

3   base:'/project/',

4   routes: routes

5 })

第三步  在模板文件index.html的head里添加下面一行,将打包生成的文件引入路径修正


<meta base=/project-web/ >

至此,vue项目内部设置已完成,打包将项目放到服务器的“project”目录下


第4步  nginx配置,接口的代理转发就不多说,正常配置就好了




1      #第一个项目的配置

2      location / {

3             root   /usr/local/web/example/;

4             index  index.html index.htm;

5         try_files $uri $uri/ @router;

6         }

7     #第二个项目的配置

8     location /project {

9             root   /usr/local/web;

10             index  index.html index.htm;

11             try_files $uri $uri/ /project/index.html;

12         }

13     location @router {

14             rewrite ^.*$ /index.html last;

15         }



重启nginx