vue項(xiàng)目前端加前綴(包括頁(yè)面及靜態(tài)資源)的操作方法
具體步驟
Vue 中配置
(1)更改router模式,添加前綴
位置:router文件夾下面的index.js
const router = new Router({ base: '/nhtjfx/', // 路由前綴(該地方配置后,會(huì)發(fā)現(xiàn)你的啟動(dòng)地址也會(huì)加上這個(gè)前綴) mode: 'history', // 采用history模式URL的路徑才跟配置的對(duì)應(yīng)上,不然URL是先加/#再追加配置的地 routes:[...] });
(2)實(shí)現(xiàn)靜態(tài)文件加前綴
位置:vue.config.js
靜態(tài)資源css,js之類的的src或href引用位置會(huì)加上這個(gè)前綴,會(huì)體現(xiàn)在打包后的index.html文件內(nèi)容
例如
未加之前:<link href="./static/js/chunk-c8ec8b4a.e230ecc5.js" rel="external nofollow" rel="prefetch"> 加之后:<link href="/nhtjfx/static/js/chunk-c8ec8b4a.e230ecc5.js" rel="external nofollow" rel="prefetch">
module.exports = { publicPath: '/nhtjfx/', }
(3)nignx配置
server { listen 8088; server_name localhost; #charset koi8-r; #access_log logs/host.access.log main; location /nhtjfx/ { alias /usr/local/linewell/web/nhjcfx/front/nhtjfx/; index index.html; try_files $uri $uri/ /nhtjfx/index.html; } #location / { # root /usr/local/linewell/web/nhjcfx/front/nhtjfx;#vue前端項(xiàng)目打包后放在這里 # root /usr/local/linewell/web/nhjcfx/front/build; # index index.html index.htm;#這個(gè)index.html 是上面dist目錄下的index.html # try_files $uri $uri/ /index.html; # 解決刷新出現(xiàn)404 # } #error_page 404 /404.html; # redirect server error pages to the static page /50x.html # error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } }
補(bǔ)充:
Vue項(xiàng)目添加前綴,ngnix發(fā)布相關(guān)修改
項(xiàng)目場(chǎng)景
本人有個(gè)vue前端項(xiàng)目,要對(duì)接別人的平臺(tái),需要加個(gè)前綴,但是這個(gè)項(xiàng)目本地也會(huì)使用,所以最后希望的效果是加了前綴和未加前綴都是可以使用的。
vue項(xiàng)目加前綴
項(xiàng)目使用的是vue 2.6
靜態(tài)文件的加前綴
加前綴的方式是使用vue.config.js配置文件,再這個(gè)配置文件中,加入publicPath:"/aaa" aaa是前綴。publicPath是實(shí)現(xiàn)靜態(tài)文件加前綴
module.exports = { publicPath: "/aaa", };
實(shí)現(xiàn)的效果:dist下的index.html文件中的靜態(tài)文件的引入路徑會(huì)加上前綴:
<script src="/aaa/js/app.63e0b2dc.js"></script>
路徑加前綴
Vue的route中加入base
base:"/aaa" 實(shí)現(xiàn)路由加入前綴
路徑的跳轉(zhuǎn)會(huì)自動(dòng)帶上前綴/aaa
ngnix配置的更改:
首先必須清楚ngnix中的alias和root的區(qū)別
- root讀取的時(shí)根目錄??梢栽趕erver或location指令中使用。
- alias只能在location指令中使用。
location命中后
如果是root,會(huì)把請(qǐng)求url的 ip/域名+port
替換為root指定的目錄,訪問(wèn)資源
如果是alias,會(huì)把請(qǐng)求url的ip/域名+port+匹配到的路徑
替換為alias指定的目錄,訪問(wèn)資源
舉個(gè)栗子:
若請(qǐng)求的是:http://example.com/ftt/baa/hello.html,location配置如下
location /ftt{ root /home/abc/; }
則實(shí)際的http://example.com/替換為/home/abc訪問(wèn)路徑:/home/abc/ftt//baa/hello.html
若請(qǐng)求的是:http://example.com/ftt/baa/hello.html,location配置如下
location /ftt{ alias /home/abc/; }
則實(shí)際的http://example.com/ftt替換為/home/abc訪問(wèn)路徑:/home/abc/baa/hello.html
到此這篇關(guān)于vue項(xiàng)目前端加前綴(包括頁(yè)面及靜態(tài)資源)的操作方法的文章就介紹到這了,更多相關(guān)vue 前端加前綴內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
vue計(jì)算屬性無(wú)法監(jiān)聽(tīng)到數(shù)組內(nèi)部變化的解決方案
今天小編就為大家分享一篇vue計(jì)算屬性無(wú)法監(jiān)聽(tīng)到數(shù)組內(nèi)部變化的解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-11-11VUE解決微信簽名及SPA微信invalid signature問(wèn)題(完美處理)
這篇文章主要介紹了VUE解決微信簽名及SPA微信invalid signature問(wèn)題(完美處理),小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2019-03-03vue如何導(dǎo)出json數(shù)據(jù)為excel表格并保存到本地
這篇文章主要介紹了vue如何導(dǎo)出json數(shù)據(jù)為excel表格并保存到本地問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-07-07vue項(xiàng)目刷新當(dāng)前頁(yè)面的三種方法
這篇文章主要介紹了vue項(xiàng)目刷新當(dāng)前頁(yè)面的三種方法,本文圖文并茂給大家介紹的非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2018-12-12詳解Vue2?watch監(jiān)聽(tīng)props的值
再次遇到監(jiān)聽(tīng)子組件收到父組件傳過(guò)來(lái)的值,如果這個(gè)值變化,頁(yè)面中的值發(fā)現(xiàn)是不會(huì)跟著同步變化的,本文給大家介紹Vue2?watch監(jiān)聽(tīng)props的值,感興趣的朋友一起看看吧2023-12-12教你60行代碼實(shí)現(xiàn)一個(gè)迷你響應(yīng)式系統(tǒng)vue
這篇文章主要為大家介紹了教你60行代碼實(shí)現(xiàn)一個(gè)迷你響應(yīng)式系統(tǒng)詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪<BR>2023-03-03vue.js的雙向數(shù)據(jù)綁定Object.defineProperty方法的神奇之處
今天小編就為大家分享一篇關(guān)于vue.js的雙向數(shù)據(jù)綁定Object.defineProperty方法的神奇之處,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧2019-01-01