VUE工程打包後,history模式在IIS伺服器上,非初始路由下,重新整理報404錯誤解決方案
阿新 • • 發佈:2022-03-07
問題描述:
vue預設模式是hash模式,URL地址會帶有“#”。
例如:http://www.xxx.com/#/index
為了去掉這個#,需要在vue-router中,設定model為history,開發模式下木有問題,打包後,問題來了,
原始路徑下,http://www.xxx.com/index重新整理時候頁面正常顯示,如果路由跳轉了,http://www.xxx.com/index/id,再重新整理的時候就會報404錯誤
問題原因:
服務端的URL匹配不到相應的路由資源
解決方案:
1、更新IIS版本,最好的6以上的IIS,否則可能裝不上。
2、下載web程式安裝平臺
地址:https://www.iis.net/downloads/microsoft/url-rewrite
3、安裝完成後,開啟IIS,在主頁上,可以看到安裝的web程式安裝平臺
4、安裝完成後,你的網站主介面上,會多出一個URL重寫選項
5、開啟這個工具,新增規則——空白規則—
6、隨便給規則定個名字,在設定匹配URL時候,將“使用”選項改為“萬用字元”,將模式中寫上“*”
7、設定條件選項,點選新增,在選擇輸入字串是否時:選擇不是檔案,然後確定
8、接著就是設定操作中的操作屬性,在裡面寫你打包後的index.html路徑
9、儲存,重啟IIS。完美解決。
10、設定好以後,在你的檔案路徑下,會都出一個web.config檔案。其內容如下,如果安裝不成功的,可以將這個檔案內容直接寫好放到目錄下,也是可以的。