常常有一些特殊的MIME類型是IIS中沒有的,一般來說要我們自己手動添加。如果網站經常更換伺服器或者網站代碼是提供給多個用戶使用,那麼會造成網站中用到的特殊的MIME類型要經常性的在IIS上配置。這裡考慮到一個網站配置通用性問題,所以我們可以將MIME類型添加到ASP.NET網站的配置文件中,這樣用 ...
常常有一些特殊的MIME類型是IIS中沒有的,一般來說要我們自己手動添加。如果網站經常更換伺服器或者網站代碼是提供給多個用戶使用,那麼會造成網站中用到的特殊的MIME類型要經常性的在IIS上配置。這裡考慮到一個網站配置通用性問題,所以我們可以將MIME類型添加到ASP.NET網站的配置文件中,這樣用戶就不用一直配置IIS了。
一般來說我們是將MIME的這部份信息配置在system.webServer節點的staticContent節點中,配置的時候只要設置mimeMap節點中的fileExtension文件擴展名屬性和mimeType這個MIME類型屬性。
大概的代碼如下(代碼中添加的擴展名和MIME類型只是作為示例):
<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>
可以看到這裡添加了3個IIS預設中沒有的擴展名:
- .woff (woff字體)
- .xap (Silverlight編譯後的文件)
- .xaml (可擴展應用程式標記語言,eXtensible Application Markup Language)
這裡要額外註意一點的是,在上面代碼中我還聲明瞭remove這個移除節點,這是為了防止重覆添加MIME類型導致網站出現這個異常信息:“在唯一密鑰屬性“fileExtension”設置為“.woff”時,無法添加類型為“mimeMap”的重覆集合項”,如果你的網站沒有提示這個異常信息,或者能確定用戶的IIS上一定沒有配置這幾個擴展名,那麼remove節點就可以不用加。
此文轉載自:http://shiyousan.com/post/635425176495182735