【问题标题】:Putting dynamic CSS URLs in HTTP headers with Fastly CDN使用 Fastly CDN 将动态 CSS URL 放入 HTTP 标头中
【发布时间】:2019-03-10 13:09:20
【问题描述】:

我正在为缓存清除生成动态 CSS URL。 IE。它们的格式为styles-thisisthecontenthash123.css

我还想使用 HTTP Link 标头来稍微加快文件加载速度。 IE。有标题Link: <styles-thisisthecontenthash123.css>; rel=stylesheet

我很确定在 Fastly 中使用 VCL 可以做到这一点,但我对生态系统不够熟悉,无法弄清楚。 CSS URL 位于index.html 中,已缓存。我想我可以打开index.html,也许可以使用正则表达式解析出CSS URL。我该怎么做?

【问题讨论】:

    标签: varnish-vcl fastly fastly-vcl


    【解决方案1】:

    如果我正确理解了您的问题,您希望为index.html 的所有请求包含一个link 标头。您可以使用 Fastly 来做到这一点,但如果 CSS 文件的 URL 发生变化,您将无法使用 VCL 提取该信息(您无法检查响应正文)。

    您可以使用edge dictionaries,并且每当您的 CSS 文件名更改时,通过 API 更新引用。

    问题是,如果您要在文件更改时进行 API 调用,不妨保持文件名一致 (styles.css),并且在发布新版本时发送 cache invalidation(清除)。 Fastly 将在大约 150 毫秒内清除缓存,因此您所要做的就是添加可以在 Fastly 门户网站中使用 condition 完成的标题。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-12-17
      • 2016-09-12
      • 1970-01-01
      • 1970-01-01
      • 2017-02-26
      • 2021-07-12
      相关资源
      最近更新 更多