IIS出錯(cuò)顯示 在唯一密鑰屬性“fileExtension”設(shè)置為“.”時(shí),無法添加類型為“mimeMap”的重復(fù)集合項(xiàng)
[重要通告]如您遇疑難雜癥,本站支持知識(shí)付費(fèi)業(yè)務(wù),掃右邊二維碼加博主微信,可節(jié)省您寶貴時(shí)間哦!
今天淘寶來了一個(gè)客戶,站的源碼是一種棋牌源碼,打開源碼時(shí)候 出現(xiàn)了錯(cuò)誤,錯(cuò)誤是? 在唯一密鑰屬性“fileExtension”設(shè)置為“.”時(shí),無法添加類型為“mimeMap”的重復(fù)集合項(xiàng)
具體如下,當(dāng)時(shí)沒有來得及截圖,先來一張一樣錯(cuò)誤圖片的引證吧;
錯(cuò)誤提示:
問題原因:
在ASP.NET 網(wǎng)站的配置文件中添加了MIME類型,但是運(yùn)行網(wǎng)站后在IIS上和頁面上提示"在唯一密鑰屬性“fileExtension”設(shè)置為“.woff”時(shí),無法添加類型為“mimeMap”的重復(fù)集合項(xiàng)"這個(gè)錯(cuò)誤。后來經(jīng)過排查,是由于重復(fù)設(shè)置了MIME類型的文件擴(kuò)展名造成的。
解決方式:
解決設(shè)置fileExtension屬性出現(xiàn)類型集合項(xiàng)添加重復(fù)的方法
比如在網(wǎng)站中web.config文件的配置是這樣的:
<system.webServer>
<staticContent>
<mimeMap fileExtension=".woff" mimeType="font/x-font-woff" />
<mimeMap fileExtension=".xap" mimeType="xapapplication/x-silverlight"/>
<mimeMap fileExtension=".xaml" mimeType="application/xaml+xml"/>
</staticContent>
</system.webServer>
如果IIS中已經(jīng)有設(shè)置.xaml和 .xap這兩個(gè)擴(kuò)展名,那么IIS就會(huì)提示:在唯一密鑰屬性“fileExtension”設(shè)置為“.xaml”(或者.xap)時(shí),無法添加類型為“mimeMap”的重復(fù)集合項(xiàng)。
PS:具體的提示信息是根據(jù)自己所添加的MIME類型的擴(kuò)展名來的,比如我添加的是.woff,所以提示的是.woff這個(gè)擴(kuò)展名無法添加重復(fù)集合項(xiàng)
所以一般我們要在配置文件中添加MIME?Type,就得先使用remove節(jié)點(diǎn)刪除掉要添加的MIME,防止重復(fù)。正確的配置文件代碼如下:
<system.webServer>
<staticContent>
<remove fileExtension=".woff" />
<remove fileExtension=".xap" />
<remove fileExtension=".xaml" />
<mimeMap fileExtension=".woff" mimeType="font/x-font-woff" />
<mimeMap fileExtension=".xap" mimeType="xapapplication/x-silverlight"/>
<mimeMap fileExtension=".xaml" mimeType="application/xaml+xml"/>
</staticContent>
</system.webServer>
出現(xiàn)此異常錯(cuò)誤的原因
一般來說,我們之所以要在ASP.NET網(wǎng)站的web.config中添加MIME類型,是因?yàn)樵贗IS中并沒有設(shè)置這個(gè)MIME類型,而且因?yàn)槟承┰蛭覀冎荒茉诰W(wǎng)站的web.config配置文件中添加mimeMap(比如我們沒有權(quán)限進(jìn)入服務(wù)器等情況)。
這樣就可以能出現(xiàn)一個(gè)問題:假設(shè)當(dāng)前網(wǎng)站發(fā)布到新的服務(wù)器中,此時(shí)新服務(wù)器上的IIS默認(rèn)已經(jīng)有設(shè)置這個(gè)MIME類型,而我們網(wǎng)站web.config配置文件也設(shè)置了mimeMap的mimeType,這樣重復(fù)添加MIME類型就會(huì)提示mimemap在集合項(xiàng)目設(shè)置中重復(fù)了!
所以正如上面的解決方法那樣,要么使用remove節(jié)點(diǎn)刪除重復(fù),要么就在配置文件和IIS中二選一來設(shè)置。
通過以上的操作方式就可以解決以上問題;
問題未解決?付費(fèi)解決問題加Q或微信 2589053300 (即Q號(hào)又微信號(hào))右上方掃一掃可加博主微信
所寫所說,是心之所感,思之所悟,行之所得;文當(dāng)無敷衍,落筆求簡潔。 以所舍,求所獲;有所依,方所成!