相信很多小伙伴在用Vue-cli安裝的腳手架開發的時候,在開發環境中項目可以很正常的運行,但是進入到生產環境,編譯打包后,放入服務器,項目就不正常了,會出現空白頁或者路由跳轉404等問題。遇到這些問題不要慌張,正確的配置加上后端的簡單配合就可以解決。
如何打包
基于Vue-Cli,通過npm run build來進行打包的操作
如何部署
將打包出來的資源,基于Vue-Cli的一般是dist目錄下有static目錄和index.html文件,可以直接將這兩個文件扔到服務端 但有時候,我們會直接將dist文件扔到服務端出現的問題
打包到服務器后,出現資源引用路徑的問題 打包到服務器后,出現空白頁的問題 打包到服務器后,出現引入的css的type被攔截轉換為"text/plain"問題 打包到服務器后,出現路由刷新404的問題下面筆者根據自己Vue項目從編譯打包到正常部署服務器的經驗,來告訴大家如何解決這些問題。
一、前端配置:
①、router配置--指定路由起始(在開發模式中,Vue項目被放在了webpack配合nodeJs生成的本地服務器的根目錄,但是在真實服務器中,項目肯定不會放在根目錄,所以要指定router的base)
router
提前和后端商量好項目部署的服務器文件夾路徑
②、編譯打包配置
進入config --> index.js
build
③、使用npm run build進行打包,至此前端能做的配置已經做完
二、后端配置:
路由跳轉出現404,主要原因是后端對這個虛擬的前端路由沒有做任何處理,服務器在找不到指定路徑下的資源時,只能向客戶端返回404。
解決辦法(Apache):進行url重寫 --- 將Vue項目所在服務器文件夾下的路徑,例如:
leibo.group/pcMall/.... 重寫為 leibo.group/pcMall/index.html
.hatccess
具體的Apache開啟allowoverride ,url重寫,后端分分鐘就解決了
如果是其他類型服務器
請自行參考https://router.vuejs.org/zh-cn/essentials/history-mode.html
總結:在單頁面部署服務器中,其實更多的是思想的改變,利用前端路由來控制用戶界面內容的變更,以上就是筆者在項目部署服務器中的一些經驗,如果有什么闡述的不當的地方,還望指出!
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持武林網之家。
新聞熱點
疑難解答