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

时间:2014-11-11 17:27:56

标签: asp.net caching configuration indexing sitecore

Sitecore版本:Sitecore 7.2

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

我试过了:

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

这些项目在Web数据库和Web索引中,除非我回收AppPool,否则不会出现在页面上。

1 个答案:

答案 0 :(得分:1)

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

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

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

Sitecore中有很多缓存级别。