TFS獲取最新版本之后,本地調(diào)試網(wǎng)頁出現(xiàn)了JS和CSS加載 500的問題,所有樣式都加載不出來,但是所有JS和css路徑都是存在且正常的,后來我單獨調(diào)試SCRIPT路徑,發(fā)現(xiàn)提示:“在唯一密鑰屬性“fileExtension”設(shè)置為“.json”時,無法添加類型為“mimeMap”的重復(fù)集合項”,這段代碼是出現(xiàn)在Web.config中,具體方法參考:
如果IIS中已經(jīng)有設(shè)置.xaml和 .xap這兩個擴展名,那么IIS就會提示:在唯一密鑰屬性“fileExtension”設(shè)置為“.xaml”(或者.xap)時,無法添加類型為“mimeMap”的重復(fù)集合項。
<staticContent>
<mimeMap fileExtension=".json" mimeType="application/x-javascript" />
</staticContent>
具體的提示信息是根據(jù)自己所添加的MIME類型的擴展名來的,比如我添加的是.json,所以提示的是.json這個擴展名無法添加重復(fù)集合項
所以一般我們要在配置文件中添加MIME Type,就得先使用remove節(jié)點刪除掉要添加的MIME,防止重復(fù)。正確的配置文件代碼如下:
<staticContent>
<remove fileExtension=".json"/>
<mimeMap fileExtension=".json" mimeType="application/x-javascript" />
</staticContent>
一般來說,我們之所以要在ASP.NET網(wǎng)站的web.config中添加MIME類型,是因為在IIS中并沒有設(shè)置這個MIME類型,而且因為某些原因我們只能在網(wǎng)站的web.config配置文件中添加mimeMap(比如我們沒有權(quán)限進入服務(wù)器等情況)。
這樣就可以能出現(xiàn)一個問題:假設(shè)當(dāng)前網(wǎng)站發(fā)布到新的服務(wù)器中,此時新服務(wù)器上的IIS默認(rèn)已經(jīng)有設(shè)置這個MIME類型,而我們網(wǎng)站 web.config配置文件也設(shè)置了mimeMap的mimeType,這樣重復(fù)添加MIME類型就會提示mimemap在集合項目設(shè)置中重復(fù)了!