2013-05-13 98 views
2

嘗試在不同主機(somee.com,azure,localhost)上發佈網站。網站在asp.net的MVC 4將網站發佈到Azure後自定義css字體顯示

在本地主機和somee.com顯示: https://dl.dropboxusercontent.com/u/58930284/testing/font_local.png

在Azure的網站:
https://dl.dropboxusercontent.com/u/58930284/testing/font_azure.png

CSS:

@font-face 
{ 
    font-family: 'Font name'; 
    src: url("fonts/Font name.eot"); 
    src: url("fonts/Font name.eot?#iefix") format("embedded-opentype"), 
    url("fonts/Font name.woff") format("woff"), 
    url("fonts/Font name.ttf") format("truetype"), 
    url("fonts/Font name.svg") format("svg"); 
    font-weight: normal; 
    font-style: normal; 
} 

回答

3

IIS 7不會返回未添加到的文件類型210元素或默認情況下在 元素中具有映射的元素。此行爲可防止未經授權訪問在IIS 7配置設置中沒有映射的 文件。

基本上,IIS不會返回它不知道其媒體類型的靜態文件。因此,您需要手動添加未知的MIME類型。

<configuration> 
    <system.webServer> 
     <staticContent> 
     <remove fileExtension=".svg" /> 
     <remove fileExtension=".eot" /> 
     <remove fileExtension=".woff" /> 
     <mimeMap fileExtension=".svg" mimeType="image/svg+xml" /> 
     <mimeMap fileExtension=".eot" mimeType="application/vnd.ms-fontobject" /> 
     <mimeMap fileExtension=".woff" mimeType="application/x-woff" /> 
     </staticContent> 
    </system.webServer> 
</configuration> 

將此配置放置到項目的webconfig文件中。