除非回收AppPool,否则Sitecore不会在页面上显示更改

问题描述:

Sitecore版本:Sitecore 7.2

Sitecore Version: Sitecore 7.2

我有一个查询网页索引以获取项目的控件,但是当添加新项目或编辑旧项目时,更改将不会显示在页面上.

I have an control that queries web index to get item, but when new items are added or old items are edited, the changes won't show on page.

我尝试过:

  • 在web.config中禁用htmlcache
  • 重新发布项目并转到网络数据库以确保它们在网络中
  • 在Luke中重建Web索引并使用相同的查询(来自search.log)以检查查询结果
  • 使用/sitecore/admin/cache.aspx工具清除缓存
  • 在IIS中回收AppPool(仅此方法有效)

这些项目位于Web数据库和Web索引中,除非我回收AppPool,否则它们不会显示在页面上.

The items are in web database and web index, just won't appear on page unless I recycle AppPool.

对于以前的注释,您需要排除IIS缓存.这可以是内核模式缓存和常规输出缓存.也可以是压缩.如果您已配置压缩并将MIME类型标识为静态,则IIS将在临时目录中创建文件的压缩副本.

Per previous comments, you need to rule out IIS caching. This can be Kernel-mode caching and regular output caching. It can also be compression. If you have configured compression and identified the MIME type as static then IIS will create a compressed copy of the file in a temp dir.

请记住,项目也(可能)被缓存,而不仅仅是HTML.因此,您应该禁用config中所有各个位置的所有缓存.使用SDN上的缓存配置参考"和优化性能"文档,然后向后工作.

Remember that items are also (potentially) cached, not just HTML. So you should disable all caching in all the various locations in config. Use the Caching Configuration Reference and Optimizing Performance documents from the SDN and work backwards.

您可以使用Sitecore的缓存统计信息页面查看组件是否正在缓存(在子布局/渲染级别)http://mysite/sitecore/admin/cache.aspx.尝试点击此处的重置"按钮,然后重新加载页面.

You can use Sitecore's cache stats page to see if the components are being cached or not (at a sublayout/rendering level) http://mysite/sitecore/admin/cache.aspx. Try hitting the reset button there and reloading your page.

Sitecore中有很多缓存级别.

There are lots of caching levels in Sitecore.