vue-cli2x history模式 部署在服务器端的nginx配置 (非根目录)

参考:https://segmentfault.com/a/1190000017009422?utm_source=tag-newest
vue history需要nginx或者其他方式配置一下才可正确访问,否则路由跳转之后刷新一下便会404 具体原因vue-router官网有说明,在此不多说

该项目是用的vue-cli2x 最近遇到了新问题,我整个项目被拆分为多个vue站点,这个时候,域名是相同的只是第一级路径是不同的依次来区分重定向到哪个站点,这就需要部署服务的时候做区分,不能再/根目录做nginx配置,应该是/a到a站点,/b到b站点

解决方案如下(以a站点nignx部署配置和vue配置举例)

本地安装nginx进行测试,配置如下

server {
        listen       80;
        server_name  localhost;

        location /a{
            root E:/xxx/xxx/dist;
            index  index.html index.htm;  
            try_files $uri $uri/ /a/index.html;
        }
    }

vue router 配置

// 路由配置
const RouterConfig = {
  base: "/a/",
  mode: 'history',
  routes: routers
};

该项目是用的vue-cli2 所以只需要修改config 里面的index.js的build部分

webpack 配置修改

build: {
    // Template for index.html
    index: path.resolve(__dirname, '../dist/a/index.html'),
    // Paths
    assetsRoot: path.resolve(__dirname, '../dist'),
    assetsSubDirectory: 'a/static',
    assetsPublicPath: '/',
  }

最终项目地址为 http://.xxx.com/a/
同理b站点也是一样的配置

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值