.htaccess的,你可以做這樣的假設字體文件是fontfile.otf.gz
,瀏覽器請求,作爲fontfile.otf
RewriteEngine On
#Check for browser's Accept-Encoding, remove it for force return gzipped one
RewriteCond "%{HTTP:Accept-Encoding}" "gzip.*deflate|deflate.*gzip"
#check file name is endswith otf
RewriteCond %{REQUEST_FILENAME} "\.(otf)$"
#check existance of .gz file name
RewriteCond %{REQUEST_FILENAME}.gz -s
#rewrite it to .otf.gz
RewriteRule ^.*$ %{REQUEST_URI}.gz [L]
#update some response header
<FilesMatch "\.otf\.gz$">
AddEncoding gzip .gz
ForceType "text/plain"
</FilesMatch>
如果字體文件和網站的跨域,你需要把Access-Control-Allow-Origin
, Firefox將不會加載font objects cross-domain。
在壁虎,網頁字體都受到了 同一域限制(字體文件 必須在同一個域中的頁面 使用它們),除非HTTP訪問 控件用來放鬆這個 限制。
Header set Access-Control-Allow-Origin *
來源
2010-01-11 13:54:25
YOU
THX回答//我複製粘貼,並嘗試了//它不工作(字體是沒有得到gzip壓縮)使用Firebug在Firefox 3.5 //該ForceType指令不工作或者檢查(申請/vnd.oasis.opendocument.formula-template)//我必須替換REQUEST_FILENAME或REQUEST_URI嗎? – Knu 2010-01-11 14:06:01
你有提前製作的gzip文件,對不對?您可以嘗試通過註釋刪除接受編碼的檢查行。 – YOU 2010-01-11 14:43:06
你可以在這裏用螢火蟲查看這個頁面 - http://test.my-mm.org/font/embed.htm。它的工作和我在我的博客中使用類似的方式。 – YOU 2010-01-11 14:48:44