EPiServer [ContentOutputCache] - 停止在管理员登录时清除缓存

EPiServer [ContentOutputCache] - Stop cache clear on Admin login

最近我为我们的一个站点实施了 [ContentOutputCache],并且在大多数情况下都很棒。当管理员登录到 CMS 时,缓存似乎停止工作。这可能是设计使然。是否有可能阻止这种情况的发生?我希望缓存仅在发布内容时刷新。

据我了解,登录的管理员和编辑将始终看到未缓存的信息。所以当我想测试缓存时,我通常会打开两个不同的浏览器。在一个中,我已登录,而在另一个中,我未登录。如果您已登录,那么您通常希望看到最新的信息,而不是缓存的信息。但是当然,如​​果另一个普通访客与 editor/administrator 同时查看站点,那么普通访客仍然会看到缓存版本(直到编辑或管理员保存一些更改)。

如果用户通过身份验证,则输出缓存将被禁用,并且以这种方式创建它是有充分理由的,并且尚未更改此行为。

如果不是这种情况,可能会导致未经授权访问受保护的内容。如果第一个加载资源的访问者通过了访问权限的身份验证,就会发生这种情况。 由于输出缓存通过绕过内容的生成来工作,这是它的全部要点,因此也不可能(非常困难)对用于生成该内容的每个项目进行身份验证检查。

此外,正如@sam-m 提到的,这不会影响缓存如何为其他未经身份验证的访问者工作,这会让我采取措施并质疑管理员需要输出缓存的原因第一名,特别是考虑到输出缓存仅用于提高负载下的性能。