首页 > 解决方案 > 如何使响应式网站中sitecore的html缓存无效?

问题描述

我们有一个基于站点核心的响应式网站,与桌面不同,它在某些页面中针对移动设备提供了不同的内容。我们使用 Http Request 用户代理来识别设备类型,并基于它有不同的业务逻辑。

当我们为这些渲染启用了站点核心 HTML 缓存时,与用户代理逻辑一起工作的逻辑就不起作用了。因为站点核心缓存不会因设备而异而失效。因此,对于不同的设备,sitecore 也会从渲染的相同 HTML 缓存中给出响应。

我们应该如何处理这种情况?

标签: asp.net-mvcsitecoresitecore8sitecore-mvcdevice-detection

解决方案


您可以使用用户代理的业务逻辑创建自己的自定义“变化方式”。或者使用因设备而异,但您需要按照 Sitecore 支持的方式使用设备,在下方创建您的设备/sitecore/layout/Devices并使用它们。

为. RenderRenderingProcessor_ Sitecore.Mvc.Pipelines.Response.RenderRendering_ mvc.renderRendering pipeline并将复选框添加到模板/sitecore/templates/System/Layout/Sections/Caching/

有关代码示例,请参阅 John West 的 Sitecore 中使用 MVC 的自定义缓存标准

有关缓存的更多信息,请参阅Sitecore 缓存和 Sitecore 自定义缓存


推荐阅读