出现404的根本原因是因为 vue-router 的路径不是真实的路径,而是通过 js 渲染的。页面刷新向服务端请求的时候js 还没有开始处理。
解决方法:
1.由后台解决,后台在服务端添加配置,检测到404页面,直接跳转指向到 index.html 的 路径
2.由前端解决,不采用 mode:"history" 模式,采用 hash 路径;就可以解决404的问题 --- 虽然这样会显得 url 很丑