在 TYPO3 日志中禁用 "cache-disabled"

Disable "cache-disabled" in TYPO3 Log

我在我的 typo3 实例中开发了一些扩展,其中 gets/sends 数据 from/to 通过 XML 接口的外部数据后端。 显然,需要在某些页面上禁用缓存,这些页面显示来自该界面的结果。 不幸的是,我的 typo3-log 被垃圾邮件警告,如:

cms: $TSFE->set_no_cache() 被触发。原因:no_cache 已在页面生成之前设置 - 安全检查。缓存被禁用! cms: $TSFE->set_no_cache() 被触发。原因:config.no_cache 已设置。缓存已禁用!

如何在不完全禁用日志的情况下禁用 typo3-logger 中的缓存警告? 提前致谢并致以最诚挚的问候 奥利弗

您没有说在哪里显示您获取的数据,也没有说为什么需要明确禁用缓存。所以这个答案只能是关于你通常会在你的用例中做什么。

通常,您会将呈现自定义数据的任何 TypoScript 对象声明为 USER_INT。这意味着在 TYPO3 中,当呈现页面内容时,不会呈现此 TS 对象的输出。相反,添加了一个占位符字符串并且对象将在每个请求上呈现,无论在 URL.

中给出了哪些其他缓存指令或缓存键。

这是您在 TYPO3 宇宙中区分缓存内容和非缓存内容的方式。与禁用整个页面缓存相比,这样做可以显着提高性能。

如果您的用例以某种方式要求取消缓存整个页面呈现,因为您在整个页面和内容呈现过程中都使用自定义源中的数据,我建议您重新考虑这一点并决定一个策略允许您在可以控制的非常精确的位置插入此类值,如 USER_INT.

但是如果您真的希望应用程序运行良好,您将允许 TYPO3 正常缓存,然后在 XML 源更新时执行必要的操作来刷新 TYPO3 缓存,这将需要维护从 TYPO3 到 XML 的关系,因此您可以使使用特定 XML 文件的 TYPO3 页面缓存无效。提示:存在允许向缓存条目添加额外标签的挂钩,因此理论上您可以将 XML 文件名哈希添加为可刷新标签。