font-face跨域辦法

font-face是現在比較流行的技術,可以矢量化你的圖標,更改顏色方便等等。如果你想更進一步瞭解他,請點擊這裏(CSS3 icon font完全指南)

今晚有網友問到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

 


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章