码迷,mamicode.com
首页 > Web开发 > 详细

解决网站出现GET .woff 404 (Not Found)的问题

时间:2015-11-23 16:19:43      阅读:274      评论:0      收藏:0      [点我收藏+]

标签:

网站发布到IIS后,发现网站使用的Bootstrap框架所引用的woff字体无法正常显示。

于是跟踪http请求,对woff字体请求出现GET .woff 404 (Not Found)的问题,但是项目中woff字体的文件并未丢失。

后经排查,原来是服务器上IIS没有添加woff字体的MIME类型,导致发送HTTP请求时,IIS无法处理和识别此类型的文件.

目录:

  1. 解决方法1:在Web.config配置文件中添加woff字体的MIME类型
  2. 解放方法2:在IIS中添加woff字体的MIME类型
  3. woff字体简介
  4. MIME类型简介

解决方法一:在Web.config配置文件中添加woff字体的MIME类型

如果网站是使用ASP.NET 或者ASP.NET MVC 编写的,可以很方便的直接使用配置文件进行woff字体的配置。只要在Web.config中的system.webServer节点添加下面的配置可以了。

  <system.webServer>    
    <staticContent>
      <remove fileExtension=".woff" />
      <mimeMap fileExtension=".woff" mimeType="font/x-font-woff" />      
    </staticContent>
  </system.webServer>


这里要注意下的是<remove fileExtension=".woff" />这个配置,添加此节点是防止出现这个错误:“在唯一密钥属性“fileExtension”设置为“.woff”时,无法添加类型为“mimeMap”的重复集合项”,这个问题可以点击此链接查看解决方法
如果只添加下面的 <mimeMap fileExtension=".woff" mimeType="font/x-font-woff" /> 这个节点,而且没有报这个错误的话,remove节点可以不用添加。另外"font/x-font-woff"是woff字体的MIME类型值。

将该节点添加到网站的配置文件后,在重新打开网站即可正常显示woff字体。此方法可用于没有权限操作IIS管理器的时候作为解决方案。

解放方案二:在IIS中添加woff字体的MIME类型

如果可以直接操作IIS管理器的话,也可以直接在IIS上添加woff字体的mime type。只要打开当前的IIS,打开MIME类型的配置,最后添加一个新的MIME类型就可以了,这里woff字体的扩展名是.woff, MIME类型为:”font/x-font-woff“。具体操作如下图所示:

打开控制面板中的IIS管理器,选择当前IIS,打开MIME类型配置

技术分享

点击MIME类型右边操作的栏的添加功能

技术分享

弹出的添加MIME类型对话框中,文件扩展名填写.woff,MIME类型可填写 font/x-font-woff 或者application/x-font-woff

 

技术分享

 

点击确定后成功添加了.woff扩展名的MIMI TYPE,现在打开网站请求WOFF字体就不会出现404 NOT FOUND错误了。

 

WOFF的MIME类型是:application/x-font-woff(font/x-font-woff也可以),目前的IIS7里面默认没有这个MIME类型,如果要让网站支持这个,请在IIS7里面的MIME类型里面添加woff。

 

解决网站出现GET .woff 404 (Not Found)的问题

标签:

原文地址:http://www.cnblogs.com/jsingleegg/p/4988449.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!