最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

VUE的history模式下除了index外其他路由404報錯解決辦法

 更新時間:2019年08月21日 14:05:53   作者:liufeng666  
在本篇文章里小編給大家分享的是關于VUE的history模式下除了index外其他路由404報錯解決辦法,對此有需要的朋友們可以學習下。

我們先來看下代碼:

location / {
index index.html;
root /dist;
try_files $uri $uri/ /index.html;
}

try_files首先會判斷他是文件,還是一個目錄,結果發(fā)現他是文件,與第一個參數 $uri變量匹配。
然后去到網站目錄下去查找文件是否存在,如果存在直接讀取返回。如果不存在直接跳轉到第三個參數.

現在不明白的是既然跳到了index為什么顯示的還是路由后的界面

內容擴展:

問題背景:

vue-router 默認是hash模式,使用url的hash來模擬一個完整的url,當url改變的時候,頁面不會重新加載。但是如果我們不想hash這種以#號結尾的路徑時候的話,我們可以使用路由的history的模式。比如如下網址:使用hash模式的話,那么訪問變成 http://localhost:8080/bank/page/count/#/ 這樣的訪問,如果路由使用 history的話,那么訪問的路徑變成 如下:http://localhost:8080/bank/page/count 這樣的了;

不過history的這種模式需要后臺配置支持。比如:當我們進行項目的主頁的時候,一切正常,可以訪問,但是當我們刷新頁面或者直接訪問路徑的時候就會返回404,那是因為在history模式下,只是動態(tài)的通過js操作window.history來改變?yōu)g覽器地址欄里的路徑,并沒有發(fā)起http請求,但是當我直接在瀏覽器里輸入這個地址的時候,就一定要對服務器發(fā)起http請求,但是這個目標在服務器上又不存在,所以會返回404

怎么解決呢?我們現在可以把所有請求都轉發(fā)到 http://localhost:8080/bank/page/index.html上就可以了。

解決方案:

對于VUE的router[mode: history]模式在開發(fā)的時候,一般都不出問題。是因為開發(fā)時用的服務器為node,Dev環(huán)境中自然已配置好了。

但對于放到nginx下運行的時候,自然還會有其他注意的地方。總結如下:

在nginx里配置了以下配置后, 可能首頁沒有問題,但鏈接其他會出現(404)

    location / {
   root D:\Test\exprice\dist;
   index index.html index.htm;
   try_files $uri $uri/ /index.html;
   add_header 'Access-Control-Allow-Origin' '*';
   add_header 'Access-Control-Allow-Credentials' 'true';
   add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS';
   add_header 'Access-Control-Allow-Headers' 'DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type';
  }
  
  location ^~/api/ {
   proxy_pass http://39.105.109.245:8080/;
  }

為了解決404,需要通過以下兩種方式:

1、官網推薦

location / {
  root D:\Test\exprice\dist;
  index index.html index.htm;
  try_files $uri $uri/ /index.html;

2、匹配errpr_page

location /{
  root /data/nginx/html;
  index index.html index.htm;
  error_page 404 /index.html;
}

3、

 server {
  listen  8888;#默認端口是80,如果端口沒被占用可以不用修改
  server_name localhost;
  root  E:/vue/my_project/dist;#vue項目的打包后的dist
  location / {
   try_files $uri $uri/ @router;#需要指向下面的@router否則會出現vue的路由在nginx中刷新出現404
   index index.html index.htm;
  }
  #對應上面的@router,主要原因是路由的路徑資源并不是一個真實的路徑,所以無法找到具體的文件
  #因此需要rewrite到index.html中,然后交給路由在處理請求資源
  location @router {
   rewrite ^.*$ /index.html last;
  }
  #.......其他部分省略
 }

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • vue3雙向綁定實現原理解讀

    vue3雙向綁定實現原理解讀

    這篇文章主要介紹了vue3雙向綁定實現原理解讀,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-10-10
  • Vue 實現把表單form數據 轉化成json格式的數據

    Vue 實現把表單form數據 轉化成json格式的數據

    今天小編就為大家分享一篇Vue 實現把表單form數據 轉化成json格式的數據,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-10-10
  • Vue+Vant 圖片上傳加顯示的案例

    Vue+Vant 圖片上傳加顯示的案例

    這篇文章主要介紹了Vue+Vant 圖片上傳加顯示的案例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-11-11
  • vue中利用simplemde實現markdown編輯器(增加圖片上傳功能)

    vue中利用simplemde實現markdown編輯器(增加圖片上傳功能)

    這篇文章主要介紹了vue中利用simplemde實現markdown編輯器(增加圖片上傳功能),本文通過實例代碼相結合的形式給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-04-04
  • Vue數字輸入框組件使用方法詳解

    Vue數字輸入框組件使用方法詳解

    這篇文章主要為大家詳細介紹了Vue數字輸入框組件的使用方法,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-02-02
  • vue 父組件獲取子組件里面的data數據(實現步驟)

    vue 父組件獲取子組件里面的data數據(實現步驟)

    在Vue中,父組件可以通過`ref`引用子組件,并通過`$refs`屬性來訪問子組件的數據,下面分步驟給大家介紹vue 父組件獲取子組件里面的data數據,感興趣的朋友一起看看吧
    2024-06-06
  • vue關閉開發(fā)模式提示的簡單解決辦法

    vue關閉開發(fā)模式提示的簡單解決辦法

    Vue開發(fā)模式是一種基于Vue.js框架的開發(fā)方式,它可以幫助開發(fā)者更高效地構建和維護復雜的Web應用程序,下面這篇文章主要給大家介紹了關于vue關閉開發(fā)模式提示的簡單解決辦法,需要的朋友可以參考下
    2024-04-04
  • VUE 無限層級樹形數據結構顯示的實現

    VUE 無限層級樹形數據結構顯示的實現

    在做項目中,會遇到一些樹形的數據結構,常用在左側菜單導航,本文就介紹一下如何實現,感興趣的可以了解一下
    2021-07-07
  • 基于vue-cli3創(chuàng)建libs庫的實現方法

    基于vue-cli3創(chuàng)建libs庫的實現方法

    這篇文章主要介紹了基于vue-cli3創(chuàng)建libs庫的實現方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-12-12
  • 前端開發(fā)利器Vite完整版詳解

    前端開發(fā)利器Vite完整版詳解

    這篇文章主要給大家介紹了關于前端開發(fā)利器Vite完整版詳解的相關資料,Vite是一種基于ES模塊的開發(fā)服務器和構建工具,專為現代化的前端開發(fā)而設計,需要的朋友可以參考下
    2023-11-11

最新評論

六枝特区| 泽州县| 阜新| 汽车| 富源县| 共和县| 拉孜县| 永胜县| 根河市| 夹江县| 新沂市| 太仓市| 城口县| 观塘区| 北安市| 治县。| 奈曼旗| 昆山市| 丹阳市| 桐柏县| 宁夏| 林芝县| 桐乡市| 建阳市| 普安县| 营山县| 天全县| 息烽县| 雅安市| 边坝县| 陵水| 七台河市| 安溪县| 通化县| 门头沟区| 武川县| 灌南县| 普兰县| 陆丰市| 长顺县| 麻城市|