Sitecore:内容编辑器随机崩溃
Sitecore: content editor crashing randomly
我们遇到了一个问题,内容编辑器使浏览器崩溃(任何浏览器 - Chrome、Firefox 和 IE),然后似乎锁定了 session。
这个问题似乎是一波接一波地发生 - 在一天的大部分时间里它工作正常,然后在一段时间内它一直发生。一个示例触发点是在内容树中选择一个项目,然后单击编辑按钮。然后页面冻结。有时它会在标题栏中显示 'Not Responding',但有时您仍然可以点击地址栏,但页面本身完全没有响应,几乎就像页面上有一个覆盖层,防止点击任何东西。如果地址栏仍然可以点击,回到根目录 URL 只会导致网站挂起并持续加载。
有趣的是,发生这种情况时,用户可以加载不同的浏览器并正常登录(使用相同的凭据)。所以问题似乎与浏览器有关 session。但是,如果用户尝试在新浏览器中执行相同的操作(单击项目的 'edit' 按钮),那么它也会崩溃。
我已经检查了浏览器开发工具中的 JavaScript 控制台,似乎没有任何 JavaScript 错误,日志中也没有任何问题提示,所以我们是有点困惑。
我们有大约 6 名以上的内容编辑人员同时工作。
这几乎发生在我见过的每个 Sitecore 实例上。
Sitecore 在管理界面中使用同步请求 - 如果您在管理界面中查看浏览器控制台,您可能会注意到有一堆关于同步请求被弃用的警告,因为它们可能对用户体验。
这种负面影响就是您所遇到的,整个浏览器选项卡(或整个浏览器,具体取决于您使用的浏览器)被锁定并且在服务器响应之前不会接受任何输入。
大多数情况下,如果您等待足够长的时间(几分钟),选项卡将再次响应,但有时服务器似乎永远不会响应,您只需要刷新选项卡并重新找到您的位置。
要确认浏览器被锁定时发生了什么,而不是在 JavaScript 控制台中查找错误,而是在开发人员工具的“网络”选项卡中查找服务器需要很长时间的请求回应。
检查以确保您的 "Main Content" 字段中没有硬编码的依赖项已被移动到内容树中的其他位置或被彻底删除。
当我将一个内容项目 link 移动到 iframe 中时,我遇到了这种确切的经历(冻结然后会话锁定)。我一直在使用硬编码的相关 link 而不是 SiteCore link(否则,不会有问题,因为 SiteCore 在内容移动时自动更新内部 links) .
我找到的针对我的特定问题的唯一解决方案是将更新的内容项移回原来的位置,然后编辑引用它的内容项中的 "Main Content" 字段(或将其恢复到其原始位置,如果它被删除了)。
我知道你的问题不一致,但如果你还没有的话,值得一试。如果导致冻结的更改尚未发布到您的暂存或生产环境,这可能就是您的用户没有经常看到这种情况发生的原因。
在将 dotTrace 示例发送给 Sitecore 支持后,他们已确认 8.1 版中存在导致此问题的错误。该错误的参考编号是 92994。
作为解决方法,他们提出了以下建议:
As a workaround for the issue, please set value of the
Indexing.UpdateInterval setting to 00:00:00. It will disable automatic
updates of Quick Search (aka system) search index. This search index
is not used for searchin by Sitecore as Search.UseLegacySearchEngine
setting is set to false. Thus, indexing can be safely disabled
自应用此解决方法以来,我们的用户尚未报告该问题。
我们遇到了一个问题,内容编辑器使浏览器崩溃(任何浏览器 - Chrome、Firefox 和 IE),然后似乎锁定了 session。
这个问题似乎是一波接一波地发生 - 在一天的大部分时间里它工作正常,然后在一段时间内它一直发生。一个示例触发点是在内容树中选择一个项目,然后单击编辑按钮。然后页面冻结。有时它会在标题栏中显示 'Not Responding',但有时您仍然可以点击地址栏,但页面本身完全没有响应,几乎就像页面上有一个覆盖层,防止点击任何东西。如果地址栏仍然可以点击,回到根目录 URL 只会导致网站挂起并持续加载。
有趣的是,发生这种情况时,用户可以加载不同的浏览器并正常登录(使用相同的凭据)。所以问题似乎与浏览器有关 session。但是,如果用户尝试在新浏览器中执行相同的操作(单击项目的 'edit' 按钮),那么它也会崩溃。
我已经检查了浏览器开发工具中的 JavaScript 控制台,似乎没有任何 JavaScript 错误,日志中也没有任何问题提示,所以我们是有点困惑。
我们有大约 6 名以上的内容编辑人员同时工作。
这几乎发生在我见过的每个 Sitecore 实例上。
Sitecore 在管理界面中使用同步请求 - 如果您在管理界面中查看浏览器控制台,您可能会注意到有一堆关于同步请求被弃用的警告,因为它们可能对用户体验。
这种负面影响就是您所遇到的,整个浏览器选项卡(或整个浏览器,具体取决于您使用的浏览器)被锁定并且在服务器响应之前不会接受任何输入。
大多数情况下,如果您等待足够长的时间(几分钟),选项卡将再次响应,但有时服务器似乎永远不会响应,您只需要刷新选项卡并重新找到您的位置。
要确认浏览器被锁定时发生了什么,而不是在 JavaScript 控制台中查找错误,而是在开发人员工具的“网络”选项卡中查找服务器需要很长时间的请求回应。
检查以确保您的 "Main Content" 字段中没有硬编码的依赖项已被移动到内容树中的其他位置或被彻底删除。
当我将一个内容项目 link 移动到 iframe 中时,我遇到了这种确切的经历(冻结然后会话锁定)。我一直在使用硬编码的相关 link 而不是 SiteCore link(否则,不会有问题,因为 SiteCore 在内容移动时自动更新内部 links) .
我找到的针对我的特定问题的唯一解决方案是将更新的内容项移回原来的位置,然后编辑引用它的内容项中的 "Main Content" 字段(或将其恢复到其原始位置,如果它被删除了)。
我知道你的问题不一致,但如果你还没有的话,值得一试。如果导致冻结的更改尚未发布到您的暂存或生产环境,这可能就是您的用户没有经常看到这种情况发生的原因。
在将 dotTrace 示例发送给 Sitecore 支持后,他们已确认 8.1 版中存在导致此问题的错误。该错误的参考编号是 92994。
作为解决方法,他们提出了以下建议:
As a workaround for the issue, please set value of the Indexing.UpdateInterval setting to 00:00:00. It will disable automatic updates of Quick Search (aka system) search index. This search index is not used for searchin by Sitecore as Search.UseLegacySearchEngine setting is set to false. Thus, indexing can be safely disabled
自应用此解决方法以来,我们的用户尚未报告该问题。