爲了在前端正確地顯示字體,瀏覽器必須使用正確的http header來接受字體文件。若是服務器沒有設置要求的頭信息,那麼有些瀏覽器就會在控制檯報錯或者直接不能顯示。css
可能你的服務器已經配置好了,你無須再動任何東西。若是沒有配置好,那麼你須要注意下面幾點:html
- 首先,修改mime-type headers;
- 其次設置CORS headers-僅當你從不一樣域下獲取字體文件或者html頁面的時候。(*注意:若是你沒有設置CORS headers信息,你能夠直接把字體文件(路徑)嵌入到CSS樣式中。若是你去fontello網站下載到本地的話fontello.css中就已經這樣作好了)
下面介紹兩大主流服務器的字體支持配置:前端
Apache
設置正確的mime-type來支持字體文件,將下面的設置加入到服務器配置文件中:瀏覽器
AddType application/font-sfnt otf ttf AddType application/font-woff woff AddType application/font-woff2 woff2 AddType application/vnd.ms-fontobject eot
若是你不能修改配置文件,那麼就在你的項目下新建一個*.htaccess文件,添加下面的設置:服務器
設置CORS headers 信息:markdown
<FilesMatch ".(eot|ttf|otf|woff|woff2)"> Header set Access-Control-Allow-Origin "*" </FilesMatch>
Nginx
Nginx服務器默認是沒有支持字體的mime-type設置的,而且對.eot文件的mime-type也是不正確的。在配置文件夾下找到mime-type設置的地方。一般,在mimes.types文件下。
搜索.eot,並在下它的設置下添加下面幾行:app
application/font-sfnt otf ttf; application/font-woff woff; application/font-woff2 woff2; application/vnd.ms-fontobject eot;
對於CORS headers 信息設置,添加下面的幾行到你的vhost配置中:字體
location ~* \.(eot|otf|ttf|woff|woff2)$ { add_header Access-Control-Allow-Origin *; }