nginx同域名同端口配置多个vue项目

第一步:vue项目打包前,更改publicPath,不同版本在不同目录下,2.X在build->config下,3.X在vue.config.js下,如下图设置,我的是3.0;打包。

module.exports = {
  productionSourceMap: false, //减少打包后的.map文件
  publicPath: '/web/',

  // 输出文件目录
  outputDir: 'web',
}

第二步:配置nginx,伪静态设置,如下图,默认打开是前端,后台为admin,请注意root和alias的区别,简单的说,root会自动加上location后的路径,alias则不会。

location / {
  alias /www/wwwroot/new.xxx.com/web/;
  index  index.html;
  try_files $uri $uri/ @router;
  error_page  404  /index.html;
}

location /admin {
  alias /www/wwwroot/new.xxx.com/admin/dist/;
  index  index.html;
  try_files $uri $uri/ @router;
  error_page  404  /index.html;
}

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

第三步:请根据伪静态设置,正确上传文件位置。

第四步:如有fonts字体加载失败,或者不正常显示,说明是目录加载问题,需更改,assetsPublicPath,实际情况请根据自己文件修改。

上一篇:ubuntu-20.04-desktop-amd64.iso巧方法(起别名)设置python命令指向python3.8


下一篇:Dockerfile设置ENTRYPOINT使用alias指令启动