1

我使用了以下规则来允许我们的静态域托管字体,但是当启用浏览器缓存时,我遇到了浏览器(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导致浏览器忽略我的努力?

4

1 回答 1

2

如果您希望您的标头添加用于非 2xx 响应,请使用

Header set always Access-Con...
于 2011-01-19T01:16:19.220 回答