1. 程式人生 > 其它 >修改vue的配置項支援生產環境下二級域名訪問的方法

修改vue的配置項支援生產環境下二級域名訪問的方法

本文主要記錄如何配置vue的打包檔案配置項,使打包後的檔案可以支援二級域名的訪問。

1、常規打包

在實際的專案中,我們通常都使用npm run build直接打包檔案後丟到伺服器上訪問
打包後的檔案目錄是這樣的:

訪問的靜態資源都是地址是這樣的:

我們現在要放在伺服器的二級域名下訪問地址,那麼訪問的路徑就應該也加上二級域名,該如何配置尼?

2、靜態檔案地址修改

靜態檔案的訪問地址應該加上二級域名字首:

方法:找到專案的打包配置檔案index.js,對引數assetsPublicPath進行配置:

解釋一下:

  • assetsPublicPath: 是webpack打包後的檔案訪問的靜態資源路徑的根路徑,如果我們想在訪問的域名後加入二級域名,那麼就要在這裡進行配置了。

  • process.argv:是node的全域性變數,我們在執行npm run build其實真實的命令列是node build/build.jsprocess.argv指的就是node命令列後的引數,argv是一個數組,第一個引數是process.execPath,第二個引數是當前執行的js檔案路徑,第三個引數開始指向我們在命名行後面加的引數了。

因此我們這樣執行命令進行打包就可以了:

如此,node就可以獲取到process.argv[2]hmy了,那麼靜態資源的路徑就可以是/hmy了。

3、介面地址修改

除了修改靜態檔案的路徑,我們還要修改介面請求地址的路徑,我們知道在vue的業務程式碼中可以通過process.env

來獲取全域性配置物件區分生產環境和開發環境,因此我們可以將相應的配置放在對應的配置檔案中。

方法:找到專案的打包生產環境的配置檔案prod.env.js

'usestrict'leturl=(process.argv[2]&&process.argv[2]=='hmy')?'hmy':'';module.exports={NODE_ENV:'"production"',URL:'"'+url+'"'}

在封裝axios請求的檔案中:

letURL=process.env.URL;
axios.defaults.baseURL=URL==='hmy'?'/hmy':'/';

這樣,就完成了二級域名訪問的配置啦!

原文出處:https://www.cnblogs.com/webhmy/p/10150482.html


作者:蝴蝶不菲
連結:https://www.imooc.com/article/268528
來源:慕課網