欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

記一次vue去除#問(wèn)題處理經(jīng)過(guò)小結(jié)

 更新時(shí)間:2019年01月24日 08:12:19   作者:愛(ài)吃蘿卜的小草菇  
這篇文章主要介紹了vue去除#問(wèn)題處理經(jīng)過(guò),小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧

1、vue項(xiàng)目,在瀏覽器中看到的路由都是帶有#的,如果想去掉#,我們可以用路由的 history 模式,這種模式充分利用 history.pushState API 來(lái)完成 URL 跳轉(zhuǎn)而無(wú)須重新加載頁(yè)面。只需要在路由表中,加入一行代碼即可:使用mode: 'history'屬性,在路由代碼中添加mode:'history'即可

2、build以后部署到服務(wù)器,會(huì)出現(xiàn)刷新頁(yè)面報(bào)404錯(cuò)誤,查看了一些資料和官方vue history模式的配置方法進(jìn)行嘗試,我原以為就這樣配置一下就可以了,結(jié)果……

我的網(wǎng)站是阿里云虛擬機(jī)+nginx+tomcat進(jìn)行建站,在nginx的配置文件中,起初為去掉#時(shí)配置如下(網(wǎng)站正常運(yùn)行):

初始配置1

這種情況下,我將vue的路由改為history模式,地址中的#去掉了,但是也會(huì)出現(xiàn)上面所說(shuō)的,刷新頁(yè)面時(shí)報(bào)404錯(cuò)誤,前端路由交給了后端去處理造成mapping匹配不上導(dǎo)致。

官方的nginx解決辦法

上面是官方給出的nginx解決辦法,于是我對(duì)nginx的域名配置文件進(jìn)行修改,修改結(jié)果如下:

更新配置文件1

重啟nignx服務(wù)后進(jìn)行測(cè)試,結(jié)果在我禁止從緩存中獲取的情況下,首頁(yè)可以訪問(wèn)到,但是所有的靜態(tài)資源無(wú)法訪問(wèn)

靜態(tài)資源無(wú)法訪問(wèn)

try_files屬性按順序檢查文件是否存在,返回第一個(gè)找到的文件。結(jié)尾的斜線表示為文件夾 -$uri/。如果所有的文件都找不到,會(huì)進(jìn)行一個(gè)內(nèi)部重定向到最后一個(gè)參數(shù)。

index.html應(yīng)該是找到了,但是為什么靜態(tài)文件找不到呢?后來(lái)我改變配置,將靜態(tài)文件與index.html地址配置到域名的根目錄(這種情況與配置地址跳轉(zhuǎn)8082有什么區(qū)別?請(qǐng)大神解惑一下)

更換配置,去掉8082的proxy_pass,添加root與index屬性,如下圖:

更新配置文件2

結(jié)果首頁(yè)都放問(wèn)不到了

403禁止訪問(wèn)

一般來(lái)說(shuō)nginx 的 403 Forbidden errors 表示你在請(qǐng)求一個(gè)資源文件但是nginx不允許你查看。

403 Forbidden 只是一個(gè)HTTP狀態(tài)碼,像404,200一樣不是技術(shù)上的錯(cuò)誤。

哪些場(chǎng)景需要返回403狀態(tài)碼的場(chǎng)景?

1.網(wǎng)站禁止特定的用戶訪問(wèn)所有內(nèi)容,例:網(wǎng)站屏蔽某個(gè)ip訪問(wèn)。

2.訪問(wèn)禁止目錄瀏覽的目錄,例:設(shè)置autoindex off后訪問(wèn)目錄。

3.用戶訪問(wèn)只能被內(nèi)網(wǎng)訪問(wèn)的文件。

以上幾種常見的需要返回 403 Forbidden 的場(chǎng)景。

我由此推斷,應(yīng)該是配置中的目錄不允許訪問(wèn)導(dǎo)致的,更新nginx.conf 啟動(dòng)用戶替換為root重啟nginx嘗試,首頁(yè)與靜態(tài)資源都訪問(wèn)成功(這樣配置是否存在安全隱患?)但是后臺(tái)api訪問(wèn)報(bào)錯(cuò)404,這樣,我意識(shí)到,我已經(jīng)在錯(cuò)誤的路上越走越遠(yuǎn)了,我域名指向前端首頁(yè),但是我域名又需要我指向后端服務(wù),但是我用代理將域名指向后端服務(wù)以后,那我之前做的嘗試都將不起作用,

我使用了nginx代理就不應(yīng)該再在nginx處進(jìn)行配置,我需要在nginx的后面tomcat或者應(yīng)用上進(jìn)行修改。(可能我項(xiàng)目的設(shè)計(jì)比較奇葩,將vue打包目錄與后臺(tái)springboot后臺(tái)打包目錄放到一起了前后臺(tái)的首頁(yè)都是同一個(gè)html)

1、鑒于我項(xiàng)目的特殊性,在不改變項(xiàng)目結(jié)構(gòu)的情況下,我在應(yīng)用中我 進(jìn)行404 status轉(zhuǎn)發(fā),

具體代碼如下:

index首頁(yè)轉(zhuǎn)發(fā)

經(jīng)過(guò)測(cè)試,雖然刷新時(shí)訪問(wèn)的頁(yè)面仍然報(bào)404,但是可以重新加載該“頁(yè)面”,實(shí)現(xiàn)了“刷新頁(yè)面”。

頁(yè)面加載成功,network報(bào)404

2、本著求知精神,我把項(xiàng)目前后端分離,重新部署,嘗試使用try_files屬性驗(yàn)證一下

結(jié)果與1、中前臺(tái)現(xiàn)象一樣,只是network狀態(tài)變成了304

頁(yè)面加載成功,network顯示304

禁用緩存后結(jié)果如圖:

禁用緩存后,狀態(tài)碼200

至此,我的問(wèn)題已經(jīng)得到完美解決!

本來(lái)這里就是一個(gè)小坑,由于自己的原因把這個(gè)小坑變成大坑了。雖然解決問(wèn)題的過(guò)程看著有點(diǎn)傻, 但終于弄明白了自己的問(wèn)題所在:前后端合并與分離兩種方式的區(qū)別,不要混淆

VUE前后端分離開發(fā),整合后上線部署,這種方式奇葩嗎?如果我不該變項(xiàng)目結(jié)構(gòu)是否會(huì)有完美的解決方法?知道的大神請(qǐng)留言解惑一下,感激不盡……

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Vue中引入使用patch-package為依賴打補(bǔ)丁問(wèn)題

    Vue中引入使用patch-package為依賴打補(bǔ)丁問(wèn)題

    這篇文章主要介紹了Vue中引入使用patch-package為依賴打補(bǔ)丁問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-03-03
  • vue項(xiàng)目部署跨域問(wèn)題的詳細(xì)解決過(guò)程

    vue項(xiàng)目部署跨域問(wèn)題的詳細(xì)解決過(guò)程

    一般我們的前端Vue項(xiàng)目中都會(huì)涉及到跨域的問(wèn)題,下面這篇文章主要給大家介紹了關(guān)于vue項(xiàng)目部署跨域問(wèn)題的詳細(xì)解決過(guò)程,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-05-05
  • element-ui中table組件的toggleRowSelection()方法使用

    element-ui中table組件的toggleRowSelection()方法使用

    這篇文章主要介紹了element-ui中table組件的toggleRowSelection()方法使用,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-03-03
  • 如何在在Vue3中使用markdown 編輯器組件

    如何在在Vue3中使用markdown 編輯器組件

    vue3發(fā)布正式版不久,生態(tài)還沒(méi)完全發(fā)展起來(lái),目前支持vue3的開源markdown編輯器組件基本上也寥寥無(wú)幾,向大家推薦一個(gè)很好用的v-md-editor 組件,組件功能很強(qiáng)大,文檔也比較詳細(xì)。該文章只介紹組件的常用功能,更多高級(jí)的功能可以參考官方文檔。
    2021-05-05
  • vue+vux實(shí)現(xiàn)移動(dòng)端文件上傳樣式

    vue+vux實(shí)現(xiàn)移動(dòng)端文件上傳樣式

    這篇文章主要介紹了vue+vux實(shí)現(xiàn)移動(dòng)端文件上傳樣式,樣式使用的是vux的cell組件,需要的朋友可以參考下
    2017-07-07
  • vue實(shí)現(xiàn)手風(fēng)琴效果

    vue實(shí)現(xiàn)手風(fēng)琴效果

    這篇文章主要為大家詳細(xì)介紹了vue實(shí)現(xiàn)手風(fēng)琴效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-11-11
  • 詳解vue3沙箱機(jī)制

    詳解vue3沙箱機(jī)制

    這篇文章主要介紹了詳解vue3 沙箱機(jī)制,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-04-04
  • 在elementui中Notification組件添加點(diǎn)擊事件實(shí)例

    在elementui中Notification組件添加點(diǎn)擊事件實(shí)例

    這篇文章主要介紹了在elementui中Notification組件添加點(diǎn)擊事件實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-11-11
  • vue3響應(yīng)式Object代理對(duì)象的讀取示例詳解

    vue3響應(yīng)式Object代理對(duì)象的讀取示例詳解

    這篇文章主要為大家介紹了vue3響應(yīng)式Object代理對(duì)象的讀取示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-08-08
  • vue3-組合式api-provide/inject詳解

    vue3-組合式api-provide/inject詳解

    provide/inject 適用于跨級(jí)通信,在孫組件中通過(guò)依賴注入的方式能獲取到父組件中改變的這個(gè)值,下面通過(guò)實(shí)例代碼介紹vue3-組合式api-provide/inject的相關(guān)知識(shí),需要的朋友可以參考下
    2022-11-11

最新評(píng)論