2

尝试在不同的主机(somee.com、azure、localhost)上发布网站。站点在 asp.net mvc 4。

在 localhost 和 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;
}
4

1 回答 1

3

默认情况下,IIS 7 不会返回未添加到元素或在元素中具有映射的文件类型。此行为可防止未经授权访问在 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 文件中。

于 2013-05-13T21:51:36.953 回答