最近在項目中使用vue框架開發項目,但是打包完成后的文件,部署到IIS服務器上的時候卻出現了問題。
問題的原因就是找不到路由,因為IIS上是每個路由是指向的具體的物理路徑。而vue+webpack打包生成后的文件是單頁應用。所以就會出現找不到404的情況。
在網上查了超多資料,有說安裝url rewrite和application request routing,然后解決的。而vue的官網上也介紹了IISweb服務器下如何部署:
在你的網站根目錄下建立一個web.config文件,內容如下:
application request routing 設置成允許代理
但是呢,都不怎么管用。
后來測試IIS服務器,發現每個路由是指向的具體的物理路徑,所以我應該設置每個路由都指向index.html頁面。發現IIS上的虛擬目錄就是解決這個問題的。實際上呢,vue的路由就是在建立虛擬目錄。所以,最后的解決方式就是,建立對應路由的虛擬目錄,然后指向index.html頁面(指向該網站目錄文件)。