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

vue-router history模式服務(wù)器端配置過程記錄

 更新時間:2021年06月08日 11:34:33   作者:既是如此  
vue路由有hash和history兩種模式,這篇文章主要給大家介紹了關(guān)于vue-router history模式服務(wù)器端配置的相關(guān)資料,需要的朋友可以參考下

history路由

history模式是指使用HTML5的historyAPI實現(xiàn)客戶端路由的模式,它的典型表現(xiàn)就是去除了hash模式中url路徑中的#。在使用Vue-Router時開啟history模式非常容易,只需要在實例化路由時傳入mode:'history'配置項即可,但缺少服務(wù)端支持時,基于historyAPI的路由無法從url地址欄直接訪問指定頁面,這個很容易理解,因為url地址欄里輸入后回車相當(dāng)于發(fā)送了一次GET請求,那么不帶#的路由路徑就和普通的API接口是一樣的,既然服務(wù)端并沒有定義這樣的接口,那直接訪問時出現(xiàn)404頁面就很正常了。

官方示例

官方提供了很多處理這種場景的方式,以node.js版本的處理方案為例:

const http = require('http')
const fs = require('fs')
const httpPort = 80

http.createServer((req, res) => {
  fs.readFile('index.htm', 'utf-8', (err, content) => {
    if (err) {
      console.log('We cannot open "index.htm" file.')
    }

    res.writeHead(200, {
      'Content-Type': 'text/html; charset=utf-8'
    })

    res.end(content)
  })
}).listen(httpPort, () => {
  console.log('Server listening on: http://localhost:%s', httpPort)
})

不難看出,它的處理思路就是所有請求都強制重定向到首頁,相當(dāng)于服務(wù)端屏蔽了訪問資源不存在的情況,而將路由的工作留給客戶端自己去處理,這樣啟用了history模式的前端路由在直接定位到子頁面時就不會報錯了。

vue-router history模式配置

vue-router的history模式需要將路由配置中的mode設(shè)置成history,同時還需要在服務(wù)器端進(jìn)行相應(yīng)的配置。

與hash模式相比,在history模式下,頁面的url中會少一些如#這樣的符號:

hash:www.example.com/#/login

history:www.example.com/login

單頁應(yīng)用程序中,在history模式下瀏覽器會向服務(wù)器請求這個頁面,但是服務(wù)器端并不存在這個頁面于是就返回404。所以這個時候就需要給服務(wù)器端進(jìn)行配置:除了靜態(tài)資源以外都需要返回單頁應(yīng)用的index.html。

服務(wù)器配置——nodejs

在nodejs服務(wù)器中需要引入connect-history-api-fallback這個模塊來處理history模式,并在使用處理靜態(tài)資源的中間件前使用這個模塊:

const path = require('path')
// 導(dǎo)入處理history模式的模塊
const history = require('connect-history-api-fallback')
const express = require('express')

const app = express()

// 注冊處理history模式的中間件
app.use(history())
// 處理靜態(tài)資源的中間件
app.use(express.static(path.join(__dirname, './web')))

app.listen(3000, () => {
    console.log('service started at port 3000')
})

服務(wù)器配置——nginx

先將打包后的文件放入html文件夾下,再打開conf文件夾下nginx.conf文件,修改如下配置:

http {
    # ...other config
    server {
        # ...other config
        location / {
            root html;
            index index.html index.htm;
            try_files $uri $uri/ /index.html;
        }
    }
}

總結(jié)

到此這篇關(guān)于vue-router history模式服務(wù)器端配置的文章就介紹到這了,更多相關(guān)vue-router history模式配置內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 去掉vue 中的代碼規(guī)范檢測兩種方法(Eslint驗證)

    去掉vue 中的代碼規(guī)范檢測兩種方法(Eslint驗證)

    我們在使用vue 腳手架時,為了規(guī)范團隊的代碼格式,會有一個代碼規(guī)范檢測,如果不符合規(guī)范就會報錯,有時候我們不想按照他的規(guī)范去寫。這時我們需要關(guān)閉,這里腳本之家小編給大家?guī)砹巳サ魐ue 中的代碼規(guī)范檢測兩種方法(Eslint驗證),一起看看吧
    2018-03-03
  • Vue項目API接口封裝的超詳細(xì)解答

    Vue項目API接口封裝的超詳細(xì)解答

    在前端vue的開發(fā)中,有一點是必須要做的,那就是將所有的API接口封裝起來,因為從開發(fā)到最終上線的過程中,API是需要經(jīng)常更換的,下面這篇文章主要給大家介紹了關(guān)于Vue項目API接口封裝的相關(guān)資料,需要的朋友可以參考下
    2022-09-09
  • Vue.js 踩坑記之雙向綁定

    Vue.js 踩坑記之雙向綁定

    這篇文章給大家?guī)砹薞ue.js 踩坑記之雙向綁定問題,非常不錯,具有參考借鑒價值,感興趣的朋友跟隨腳本之家小編一起學(xué)習(xí)吧
    2018-05-05
  • vue2前端使用axios發(fā)起post請求后端(springboot)接收不到值解決辦法

    vue2前端使用axios發(fā)起post請求后端(springboot)接收不到值解決辦法

    這篇文章主要介紹了vue2前端使用axios發(fā)起post請求后端(springboot)接收不到值解決辦法,本文通過實例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下
    2024-03-03
  • Vue項目打包、合并及壓縮優(yōu)化網(wǎng)頁響應(yīng)速度

    Vue項目打包、合并及壓縮優(yōu)化網(wǎng)頁響應(yīng)速度

    網(wǎng)站頁面的響應(yīng)速度與用戶體驗息息相關(guān),直接影響到用戶是否愿意繼續(xù)訪問你的網(wǎng)站,所以這篇文章主要給大家介紹了關(guān)于Vue項目打包、合并及壓縮優(yōu)化網(wǎng)頁響應(yīng)速度的相關(guān)資料,需要的朋友可以參考下
    2021-07-07
  • 如何監(jiān)聽Vue項目報錯的4種方式?

    如何監(jiān)聽Vue項目報錯的4種方式?

    本文主要介紹了如何監(jiān)聽Vue項目報錯的4種方式,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-04-04
  • vue項目雙滑塊組件使用

    vue項目雙滑塊組件使用

    這篇文章主要介紹了vue項目雙滑塊組件使用方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-07-07
  • Vue中使用flv.js播放視頻的示例詳解

    Vue中使用flv.js播放視頻的示例詳解

    這篇文章主要為大家詳細(xì)介紹了如何在Vue項目中使用flv.js播放視頻,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2024-04-04
  • 讓ChatGPT解讀Vue3源碼過程解析

    讓ChatGPT解讀Vue3源碼過程解析

    這篇文章主要為大家介紹了讓ChatGPT解讀Vue3源碼過程解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-02-02
  • 詳解Vue.js基于$.ajax獲取數(shù)據(jù)并與組件的data綁定

    詳解Vue.js基于$.ajax獲取數(shù)據(jù)并與組件的data綁定

    這篇文章主要介紹了詳解Vue.js基于$.ajax獲取數(shù)據(jù)并與組件的data綁定,非常具有實用價值,需要的朋友可以參考下
    2017-05-05

最新評論

班玛县| 清镇市| 色达县| 深水埗区| 永新县| 满洲里市| 福海县| 沁阳市| 都昌县| 望都县| 蕉岭县| 宁明县| 郓城县| 临潭县| 阿图什市| 友谊县| 福建省| 隆德县| 和顺县| 杨浦区| 上栗县| 潮安县| 连城县| 崇明县| 屏边| 沈丘县| 株洲县| 右玉县| 平果县| 南木林县| 南澳县| 富平县| 寻甸| 岢岚县| 繁峙县| 沈阳市| 邳州市| 丰城市| 库车县| 井冈山市| 洪雅县|