今晚有网友问到font-face跨域在nginx下如何配置,印象中一淘UX有文章介绍办法,但打开文章里面相应的链接后发现没内容。
搜了一下其他地方,大多数给出的都是一样的链接。
所以在这里补充一下内容:
原因:
Firefox对字体文件有加载限制,也就是说不允许你随便加载别人的字体,防止他人盗用字体。
解决办法:
1、把字体文件放在你网站根目录下。
2、给字体文件的http头里面添加Access-Control-Allow-Origin属性,以控制指定域引用你的字体文件。
nginx:
server { ... # Fix @font-face cross-domain restriction in Firefox location ~* \.(ttf|ttc|otf|eot|woff|font.css)$ { add_header Access-Control-Allow-Origin "http://yoursite.com"; } ... }
apache:
<FilesMatch "\.(ttf|ttc|otf|eot|woff|font.css)$"> <IfModule mod_headers.c> Header set Access-Control-Allow-Origin "http://yoursite.com" </IfModule> </FilesMatch>
3、添加mine
AddType application/vnd.ms-fontobject .eot AddType font/ttf .ttf AddType font/otf .otf AddType application/x-font-woff woff
本文出自 “默守陈归” 博客,请务必保留此出处http://snaile.blog.51cto.com/8061810/1828309
原文地址:http://snaile.blog.51cto.com/8061810/1828309