美文网首页
Vue、React前端项目打包部署

Vue、React前端项目打包部署

作者: TSDong | 来源:发表于2020-12-14 13:19 被阅读0次

    前端单页面应用部署

    前端打包上线部署方案之 hash路由模式

    对于hash路由模式打包的单页面应用,直接发布到服务器,使用nginx指向到对应文件目录即可,通用配置一般如下:

    location / {
      root /path/to/dist; // 服务器dist目录
      index index.html index.htm;
    }
    

    前端打包部署方案之history模式路由

    对于history模式路由模式的单页面应用,因为在浏览器请求静态资源的时候,是去服务器查找真正的资源路径,而我们的应用是单页面,通过路由分发的形式去加载资源的,若不配置,就会导致资源加载404,通常history模式路由的nginx的配置如下:

    location / {
      root path/to/dist; // 服务器dist目录
      index index.html index.htm;
      try_files $uri $uri/ /index.html; //访问前端路由,都转到index.html进行路由处理!!!
    }
    

    \color{#FF0000}{注意点1}

    对于直接配置到根服务器的history模式我们可以这么配置,但是对于配置到二级目录的路由模式,这种方法就是个坑,通常配置到二级目录的路由处理方式如下:

    location /app {
      root path/to/dist; // 服务器dist目录
      index index.html index.htm;
      try_files $uri $uri/ /app/index.html; //访问前端路由,都转到index.html进行路由处理!!!,注意此处变化。
    }
    

    \color{#FF0000}{注意点2}

    如果根路由下有静态资源已经指向另一个单页面应用,那么注意点1中的配置可能无用,需要将上面的 root改为alias

    \color{#FF0000}{注意点3}

    上面的路由配置好之后,项目打包部署之前,要根据环境区分打包的静态资源路径,要在项目中配置

    publicPath: isDev? '/': '/app'
    

    同时router的base 路径要设置为 /app

    相关文章

      网友评论

          本文标题:Vue、React前端项目打包部署

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