首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用htaccess为woff和woff2字体文件设置缓存TTL?

如何使用htaccess为woff和woff2字体文件设置缓存TTL?
EN

WordPress Development用户
提问于 2020-12-11 09:10:55
回答 1查看 8.3K关注 0票数 1

我的WordPress站点htaccess文件目前有以下条目来设置woff和woff2字体文件的缓存过期:

代码语言:javascript
复制
<IfModule mod_expires.c>
  # Content type
    AddType application/font-woff   .woff
    AddType application/font-woff2  .woff2
    ExpiresActive on
  # Web fonts
    ExpiresByType application/font-woff   "access plus 1 year"
    ExpiresByType application/font-woff2  "access plus 1 year"
</IfModule>

但是,我仍然收到在速度测试工具中为这些文件设置缓存TTL的建议。以下是一个存在缓存效率问题的示例:https://gtmetrix.com/reports/bydik.com/ad8hZTzh/

我的htaccess文件有什么问题吗?我怎么才能解决这个问题?

EN

回答 1

WordPress Development用户

发布于 2020-12-11 09:56:07

ExpiresByType字体/woff2 2“访问+1年”ExpiresByType应用程序/字体-Woff2“访问加1年”ExpiresByType应用程序/x字体-Woff2“访问加1年”

您需要设置ExpiresActive On (在顶部)以使这些指令产生任何效果。

您也不需要所有这些指令。您应该检查服务器使用此资源发送的mime类型的Content-Type header -它只能是一个。mime类型需要匹配来自服务器的响应。

要确定这些指令是否有效,您应该检查HTTP中的ExpiresCache-Control: max-age头。

更新:您使用的是CDN (Cloudflare),因此缓存响应头最终将由CDN决定。

您正在提供两个字体文件:

  1. https://example.com/libs/fonts/fontsolaimanlipi.woff
  2. https://example.com/fonts/fontawesome.woff2

第一个是woff字体文件(不是woff2),它是以application/x-font-woff mime类型发送的(因此需要为此修改上面的指令)。

第二种是根本不发送Content-Type头(所以上面的指令将不适用,除非您有ExpiresDefault指令?),所以您的服务器可能没有为这种mime类型启用。例如:

代码语言:javascript
复制
AddType font/woff2 .woff2

或者可以在CDN中进行配置。

票数 1
EN
页面原文内容由WordPress Development提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://wordpress.stackexchange.com/questions/379666

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档