網站發佈到IIS後,發現網站使用的Bootstrap框架所引用的woff字體沒法正常顯示。因而跟蹤http請求,發現woff字體請求出現GET .woff 404 (Not Found)的問題,可是項目中woff字體的文件並未丟失。後經排查,原來是服務器上IIS沒有添加woff字體的MIME類型,致使發送HTTP請求時,IIS沒法處理和識別此類型的文件。html
解決方法1:在Web.config配置文件中添加woff字體的MIME類型 web
解放方法2:在IIS中添加woff字體的MIME類型
woff字體簡介
MIME類型簡介 瀏覽器
解決方法一:在Web.config配置文件中添加woff字體的MIME類型服務器
若是網站是使用ASP.NET 或者ASP.NET MVC 編寫的,能夠很方便的直接使用配置文件進行woff字體的配置。只要在Web.config中的system.webServer節點添加下面的配置能夠了。app
<system.webServer> <staticContent> <remove fileExtension=".woff" /> <mimeMap fileExtension=".woff" mimeType="font/x-font-woff" /> </staticContent> </system.webServer>
這裏要注意下的是這個配置,添加此節點是防止出現這個錯誤:「在惟一密鑰屬性「fileExtension」設置爲「.woff」時,沒法添加類型爲「mimeMap」的重複集合項」,這個問題能夠點擊此連接查看解決方法。若是隻添加下面的這個節點,並且沒有報這個錯誤的話,remove節點能夠不用添加。另外」font/x-font-woff」是woff字體的MIME類型值。框架
將該節點添加到網站的配置文件後,在從新打開網站便可正常顯示woff字體。此方法可用於沒有權限操做IIS管理器的時候做爲解決方案。svg
解放方案二:在IIS中添加woff字體的MIME類型字體
若是能夠直接操做IIS管理器的話,也能夠直接在IIS上添加woff字體的mime type。只要打開當前的IIS,打開MIME類型的配置,最後添加一個新的MIME類型就能夠了,這裏woff字體的擴展名是.woff, MIME類型爲:」font/x-font-woff「。具體操做以下所示:網站
打開控制面板中的IIS管理器,選擇當前IIS,打開MIME類型配置;加密
在IIS中添加.woff截圖;
點擊MIME類型右邊操做的欄的添加功能;
添加.woff的MIME類型截圖;
彈出的添加MIME類型對話框中,文件擴展名填寫.woff,MIME類型可填寫 font/x-font-woff 或者application/x-font-woff;
設置文件擴展名和類型;
點擊肯定後成功添加了.woff擴展名的MIMI TYPE,如今打開網站請求WOFF字體就不會出現404 NOT FOUND錯誤了。
woff字體簡介
Web開放字體格式(Web Open Font Format,簡稱WOFF) 是一種網頁所採用的字體格式標準。此字體格式發展於2009年,如今正由萬維網聯盟的Web字體工做小組標準化,以求成爲推薦標準。此字體格式不但可以有效利用壓縮來減小檔案大小,而且不包含加密也不受DRM(數位著做權管理)限制。
在2010年4月8日,Mozilla基金會、Opera軟件公司和微軟提交WOFF以後,萬維網聯盟發表評論指,但願WOFF不久能成爲全部瀏覽器都支持的、「單1、可互操做的(字體)格式」。[6]2010年7月27日,萬維網聯盟將WOFF做爲工做草案發布。
WOFF的MIME類型是:application/x-font-woff(font/x-font-woff也能夠),目前的IIS7裏面默認沒有這個MIME類型,若是要讓網站支持這個,請在IIS7裏面的MIME類型裏面添加woff。
MIME類型簡介
MIME(Multipurpose Internet Mail Extensions)多用途互聯網郵件擴展類型,既設定某種擴展名的文件用一種應用程序來打開的方式類型,當該擴展名文件被訪問的時候,瀏覽器會自動使用指定應用程序來打開。多用於指定一些客戶端自定義的文件名,以及一些媒體文件打開方式。
文件擴展名 MIME類型
.svg image/svg+xmz
.woff application/x-font-woff
.woff2 application/x-font-woff