我使用了以下规则来允许我们的静态域托管字体,但是当启用浏览器缓存时,我遇到了浏览器(firefox、safari)未使用字体的问题。
<Directory "/site/http/web/assets/fonts">
<FilesMatch "\.(eot|otf|woff|ttf)$">
SetEnvIf Origin "^http://(.*)?main-domain.com$" origin_is=$0
Header set Access-Control-Allow-Origin %{origin_is}e env=origin_is
</FilesMatch>
</Directory>
我还使用以下规则让浏览器知道可以缓存静态内容:
ExpiresActive On
ExpiresDefault "modification plus 10 years"
如果我在浏览器缓存关闭的情况下浏览该站点,则每次都会加载并显示字体。
如果我关闭浏览器缓存并加载页面,字体会被加载(firebug > net)但不会显示!
标题是否304 Content Not Modified
导致浏览器忽略我的努力?