跳转到内容
搜索文档

常见问题

最后更新 查看 MarkdownAgent 设置

我仍然需要创建带有“Cache Level: Cache Everything”的“Edge Cache TTL”页面规则吗?

不需要,您不需要创建 Edge Cache TTL 页面规则。当安装了 WordPress 插件时,APO 会自动缓存内容 30 天,并在内容更改后 30 秒内使其失效。然而,由于 APO 现在支持与缓存相关的页面规则,请确保现有的页面规则不会影响 APO 所提供的资源。

源站缓存控制 (Origin Cache Control) 会覆盖 APO 吗?

不会。APO 在边缘 (Edge) 缓存时会忽略源站缓存控制,但 APO 会将原始的源站缓存控制提供给客户端。

为什么我的浏览器缓存控制标头在使用 APO 时丢失了?

如果您将**Browser Cache TTL(浏览器缓存 TTL)**设置为 Respect Existing Headers(尊重现有标头),在使用 APO 时浏览器缓存控制标头可能会丢失。例如:

curl --silent --verbose --output /dev/null https://example.com/ --header 'Accept: text/html' 2>&1 | grep cache-control
< cache-control: max-age=86400, stale-while-revalidate=86400, stale-if-error=86400

在使用 APO 时,是否仍需要 stale-if-error 指令?

不需要,因为该功能已内置在 APO 中,所以不需要 stale-if-error 指令。

当我检查文章和主页的缓存状态时,响应标头显示 cf-cache-status: BYPASS。APO 正在工作吗?

当 Chrome 开发者工具 (DevTools) 打开时,Chrome 默认会发送 Cache-Control: no-cache。您可以取消勾选 Disable cache (while DevTools is open)(停用缓存(开发人员工具开启时))设置,即可看到返回 cf-cache-status: HITcf-apo-via: cache 标头。

当我通过 cURL 检查 cf-cache-status 时,总是返回 MISSDYNAMIC。但在浏览器中我看到的是 HIT,而其他工具返回 DYNAMIC。这是预期行为吗?

是的,这是预期行为,因为请求必须包含 accept: "text/html" 标头。

激活 APO 后,Google Fonts 会被优化吗?

是的,激活 APO 后,Google Fonts 也会被优化。您可以通过检查字体的 URL 来确认优化。例如,网站加载时,URL 将从 https://fonts.gstatic.com/s/... 更改为 https://example.com/fonts.gstatic.com/s/...。对于被代理的字体,会返回 cf-apo-via:proxy 标头。

我可以自定义 APO 的查询字符串缓存吗?

有关查询参数的更多信息,请参阅查询参数与缓存响应

为什么我的字体 URL 没有被转换?

content-security-policy 响应标头存在,但缺少下文所述的值时,APO 将跳过字体 URL 转换。

为了解决这个问题,content-security-policy 标头值必须在 style-srcdefault-src 指令中允许 unsafe-inline。例如:Content-Security-Policy: style-src unsafe-inline;

此外,该标头必须在 font-srcdefault-src 指令中允许 self。例如:Content-Security-Policy: font-src self;

为什么在使用 APO 时,我会在区域日志中看到 Worker 子请求?

APO 在内部使用 Cloudflare Workers 来优化内容分发,这会产生 Worker 子请求。这些子请求可能会出现在您的区域日志中(例如通过 Logpush 收集的日志)。

为什么我会在 APO 插件上看到:“此插件尚未通过最新 3 个 WordPress 主要版本的测试。它可能不再受到维护或支持,在与较新版本的 WordPress 一起使用时可能会出现兼容性问题。”?

成熟的插件在较长的时间内不进行更新是很常见的,这很容易触发 WordPress 的未测试警告。此警告仅用于通知目的,并不意味着插件已不再工作。该插件目前仍在维护中。

这篇文档对您有帮助吗?