【vue】vue路由history模式下刷新頁面404

原因:

vue的路由是由js來控制的,但是,當你刷新瀏覽器的時候,是向服務(wù)器發(fā)送請求的一個過程,當訪問不到的時候必然會返回404。

解決辦法:

  • 后臺配合:將請求同意指向一個有效地址。
    比如,你的首頁請求地址為 www.aaa.com/go.html ,但是路由變?yōu)?code>www.aaa.com/main,這時候你可以與后端人員商量,將 www.aaa.com/... 統(tǒng)統(tǒng)指向 www.aaa.com/go.html ,這樣就解決了404問題。
  • 仿真路由:路由后帶.html后綴
    我遇到一個問題,就是頁面初次加載時是攜帶參數(shù)的, www.aaa.com/go.html?p=123 ,根據(jù)參數(shù)p決定是跳轉(zhuǎn)路由A還是路由B,加入跳轉(zhuǎn)到了路由A,也就是 www.aaa.com/routerA ,這時候刷新,就會出現(xiàn)404問題,這時候后端人員是解決不了的,因為還需要攜帶參數(shù)。
    我的解決辦法是:
    1. 先將路由仿真:也就是將 /routerA 變?yōu)?/routerA.html ,并在跳轉(zhuǎn)時攜帶參數(shù),this.$router.push({path: /routerA.html${this.$router.query.p}}),所以刷新時,會向服務(wù)端請求 routerA.html ,并且攜帶參數(shù)p;
    2. 這時在 www.aaa.com 下真的存放一個 routerA.html ,在文件里面獲取參數(shù)p,然后跳轉(zhuǎn) window.location.href='www.aaa.com/go.html?p=123'

個人博客:午后南雜

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

推薦閱讀更多精彩內(nèi)容