解决webpack打包vue项目后,部署完成后,刷新页面页面404

1.url不动式

url完全不动,即你的页面怎么改变,怎么跳转url都不会改变。这种情况的原理 就是纯ajax拿到页面后替换原页面中的元素,刷新页面就是首页

2.带hash(#)式

这种相对于第一种的话刷新页面页面不会丢失

实现原理

写一个window事件我监听url的变化,那我就能实先路由,那样我就可以根据url的变化,来通过ajax请求参数来渲染页面,一个url对应一个页面,就不会重复。

window.addEventListener(‘hashchange‘,function(){

self.urlChange()

})

3.无hash(#)式

这种类型是通过html5的最新history api来实现的 能正常的回退前进,超嗨

那么问题来了

第一种方式页面不能刷新,第二种刷新也无妨,因为url并没有改变,请求url从服务器照样能够loading到页面。

但是第三种就出问题了,我一刷新就loading不到页面就报404页面丢失了。怎么办呢???

解决方案

方案一

通过后台控制404转发到程序入口index.html页面来,让页面能够正常的显示。

方案二

通过服务器的nginx配置

可以去参考下vue的单页面模式路由页刷新解决方案

http://www.cnblogs.com/kevingrace/p/6126762.html

转载地址:https://blog.csdn.net/u013234218/article/details/70170837