网站发布后Bootstrap框架引用woff字体无法正常显示的解决方法


Posted in Javascript onNovember 24, 2016

网站发布到IIS后,发现网站使用的Bootstrap框架所引用的woff字体无法正常显示。于是跟踪http请求,发现woff字体请求出现GET .woff 404 (Not Found)的问题,但是项目中woff字体的文件并未丢失。后经排查,原来是服务器上IIS没有添加woff字体的MIME类型,导致发送HTTP请求时,IIS无法处理和识别此类型的文件。

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

解放方法2:在IIS中添加woff字体的MIME类型
woff字体简介
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>

这里要注意下的是这个配置,添加此节点是防止出现这个错误:“在唯一密钥属性“fileExtension”设置为“.woff”时,无法添加类型为“mimeMap”的重复集合项”,这个问题可以点击此链接查看解决方法。如果只添加下面的这个节点,而且没有报这个错误的话,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类型配置;

在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不久能成为所有浏览器都支持的、“单一、可互操作的(字体)格式”。[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)多用途互联网邮件扩展类型,既设定某种扩展名的文件用一种应用程序来打开的方式类型,当该扩展名文件被访问的时候,浏览器会自动使用指定应用程序来打开。多用于指定一些客户端自定义的文件名,以及一些媒体文件打开方式。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
mouse_on_title.js
Aug 25 Javascript
JS处理VBArray的函数使用说明
May 11 Javascript
jQuery lazyLoad图片延迟加载插件的优化改造方法分享
Aug 13 Javascript
js中实现多态采用和继承类似的方法
Aug 22 Javascript
javascript手工制作悬浮菜单
Feb 12 Javascript
基于jQuery实现的扇形定时器附源码下载
Oct 20 Javascript
jQuery实现瀑布流布局详解(PC和移动端)
Sep 01 Javascript
深入理解Angular.JS中的Scope继承
Jun 04 Javascript
Angularjs添加排序查询功能的实例代码
Oct 24 Javascript
vue2.0 和 animate.css的结合使用
Dec 12 Javascript
vuex的简单使用教程
Feb 02 Javascript
Vue使用虚拟dom进行渲染view的方法
Dec 26 Javascript
Javascript 数组去重的方法(四种)详解及实例代码
Nov 24 #Javascript
BootStrap树状图显示功能
Nov 24 #Javascript
Bootstrop实现多级下拉菜单功能
Nov 24 #Javascript
AngularJS自定义服务与fliter的混合使用
Nov 24 #Javascript
微信小程序-详解数据缓存
Nov 24 #Javascript
如何实现json数据可视化详解
Nov 24 #Javascript
BootStrap 可编辑表Table格
Nov 24 #Javascript
You might like
4.与数据库的连接
2006/10/09 PHP
php修改时间格式的代码
2011/05/29 PHP
解决CodeIgniter伪静态失效
2014/06/09 PHP
Joomla简单判断用户是否登录的方法
2016/05/04 PHP
php记录搜索引擎爬行记录的实现代码
2018/03/02 PHP
PHP children()函数讲解
2019/02/03 PHP
php微信分享到朋友圈、QQ、朋友、微博
2019/02/18 PHP
JS 显示当前日期与时间的代码
2010/03/24 Javascript
js数组操作学习总结
2013/11/04 Javascript
JS数组array元素的添加和删除方法代码实例
2015/06/01 Javascript
JavaScript无阻塞加载和defer、async详解
2017/02/26 Javascript
基于jQuery和CSS3实现APPLE TV海报视差效果
2017/06/16 jQuery
javascript设计模式 ? 抽象工厂模式原理与应用实例分析
2020/04/09 Javascript
JavaScript数组类型Array相关的属性与方法详解
2020/09/08 Javascript
[51:17]Mineski vs Secret 2019国际邀请赛淘汰赛 败者组 BO3 第一场 8.22
2019/09/05 DOTA
在树莓派2或树莓派B+上安装Python和OpenCV的教程
2015/03/30 Python
python读出当前时间精度到秒的代码
2019/07/05 Python
Python生成六万个随机,唯一的8位数字和数字组成的随机字符串实例
2020/03/03 Python
html5使用Canvas绘图的使用方法
2017/11/21 HTML / CSS
HTML5实现表单自动验证功能实例代码
2017/01/11 HTML / CSS
Europcar葡萄牙:葡萄牙汽车和货车租赁
2017/10/13 全球购物
英国护发和美妆在线商店:Klip Shop
2019/03/24 全球购物
教师求职推荐信范文
2013/11/20 职场文书
大学军训通讯稿
2014/01/13 职场文书
2014党员四风对照检查材料思想汇报
2014/09/17 职场文书
新学期红领巾广播稿
2014/10/04 职场文书
公司股东出资证明书
2014/11/01 职场文书
廉政承诺书2015
2015/04/28 职场文书
同意转租证明
2015/06/24 职场文书
大学副班长竞选稿
2015/11/21 职场文书
2016三八妇女节慰问信
2015/11/30 职场文书
教师纪律作风整顿心得体会
2016/01/23 职场文书
2016北大自主招生自荐信模板
2016/01/28 职场文书
asyncio异步编程之Task对象详解
2022/03/13 Python
HTML常用标签超详细整理
2022/03/19 HTML / CSS
Windows Server 2012 R2 磁盘分区教程
2022/04/29 Servers