乐趣区

vuecli在history模式下的配置

背景:自己搭了 vue 测试项目,使用的是 history 模式,放在后台,一开始进入项目没什么问,但是再一刷新页面就 404 了,what? 当时的比较懵逼

,为啥呢?因为之前写过项目上线过是好用的啊,这个项目按照那个写的啊,但是解压项目 zip 文件之后发现,WEB-INF 没有引入,瞬间就 WC 了,

为了以防自己犯这种 SX 的问题浪费时间,所以打算记录下 history 的配置

1、配置 router/index.js


2、build/utils.js


3、webpack.prod.conf.js,这里配置因为我们的应用是个单页客户端应用,如果后台没有正确的配置,当用户在浏览器直接访问 http://oursite.com/user/id 就会返回 404,这就不好看了。

所以呢,你要在服务端增加一个覆盖所有情况的候选资源:如果 URL 匹配不到任何静态资源,则应该返回同一个 index.html 页面,这个页面就是你 app 依赖的页面。

这里可以看官网文档:https://router.vuejs.org/zh/g…

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xmlns="http://xmlns.jcp.org/xml/ns/javaee"
         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee/web-app_2_5.xsd"
         id="scplatform" version="2.5">

  <display-name>/</display-name>

  <error-page>
    <error-code>404</error-code>
    <location>/index.html</location>
  </error-page>

</web-app>

再配置 webpack.prod.conf.js,因为我使用了 friendly-errors-webpack-plugin 压缩插件,打包成 zip 包

配置到这里就结束了,希望可以给大家一点点帮助,主要是给自己看 ^v^!

退出移动版