使用場景 最近用 .net core mvc 寫了一個工具類的項目,作為我們項目的後臺管理網站使用。第一次被老大拿去部署的時候被告知不可用,同樣的代碼在我電腦和我的iis上都可以使用的啊。 後來才知道,原來老大是把這個項目作為某一個項目的應用程式發佈上去了,在使用過程中會有一個目錄問題。 解決方案一 ...
使用場景
最近用 .net core mvc 寫了一個工具類的項目,作為我們項目的後臺管理網站使用。第一次被老大拿去部署的時候被告知不可用,同樣的代碼在我電腦和我的iis上都可以使用的啊。
後來才知道,原來老大是把這個項目作為某一個項目的應用程式發佈上去了,在使用過程中會有一個目錄問題。
解決方案一
一開始為了能讓項目快速使用,我把虛擬目錄寫在了我要請求的Ajax路徑中。
解決方案二
可以在模板頁定義一個環境變數或者全局變數,記錄這個虛擬目錄的值,然後訪問的時候以變數的方式拼接到Ajax的路徑上。
解決方案三
上面的兩種方式都是把虛擬目錄寫死在網頁里說js里,這樣的操作很不好。
忽然想到模板頁引用的js和css路徑也都是相對路徑為什麼沒有問題呢?
試了一下,得到的結果是,在Ajax的路徑前面加 ../ (這樣適用於只有一層虛擬目錄的情況),如果有a標簽的跳轉就在路徑前面加 ~/。
這樣一來,網站以應用程式方式發佈就沒有問題了,親測好用的。