我有两个服务器,一个用于Content Management网站,另一个用于Content Delivery网站。两台服务器都配置不足。
CM服务器: 1)运行网站的IIS。 2)Sitecore文件夹和文件。 3)核心,主数据库和Web数据库 4)网站代码文件/文件夹。
CD服务器 1)运行网站的IIS。 2)没有Sitecore文件夹和文件。 3)核心和通用Web数据库。 4)网站代码文件/文件夹。
注意:Web数据库在两个网站中都很常见。
我可以浏览这两个网站的网页 但来自CM网站的Sitecore仅作为CD网站没有sitecore文件。
我的一些网页正在从Lucene Indexes中获取内容。
现在我从Sitecore(CM网站)从Control面板构建lucene索引,索引在CM服务器的数据文件夹中成功构建,并且在CD网站的Data文件夹中没有创建索引。
我尝试在CD服务器上第一次复制索引,但是当我发布更改时,它只更新了CM服务器数据文件夹而不是CD服务器数据文件夹上的索引。
我想在发布项目时在CM和CD服务器上的Data文件夹中创建索引。
索引配置
<configuration xmlns:patch="http://www.sitecore.net/xmlconfig/">
<sitecore>
<contentSearch>
<configuration type="Sitecore.ContentSearch.LuceneProvider.LuceneSearchConfiguration, Sitecore.ContentSearch.LuceneProvider">
<indexes hint="list:AddIndex">
<index id="sitecore_web_index" type="Sitecore.ContentSearch.LuceneProvider.LuceneIndex, Sitecore.ContentSearch.LuceneProvider">
<param desc="name">$(id)</param>
<param desc="folder">$(id)</param>
<!-- This initializes index property store. Id has to be set to the index id -->
<param desc="propertyStore" ref="contentSearch/databasePropertyStore" param1="$(id)" />
<strategies hint="list:AddStrategy">
<!-- NOTE: order of these is controls the execution order -->
<strategy ref="contentSearch/indexUpdateStrategies/onPublishEndAsync" />
</strategies>
<commitPolicyExecutor type="Sitecore.ContentSearch.CommitPolicyExecutor, Sitecore.ContentSearch">
<policies hint="list:AddCommitPolicy">
<policy type="Sitecore.ContentSearch.TimeIntervalCommitPolicy, Sitecore.ContentSearch" />
</policies>
</commitPolicyExecutor>
<locations hint="list:AddCrawler">
<crawler type="Sitecore.ContentSearch.SitecoreItemCrawler, Sitecore.ContentSearch">
<Database>web</Database>
<Root>/sitecore</Root>
</crawler>
</locations>
</index>
</indexes>
</configuration>
</contentSearch>
</sitecore>
</configuration>
发布策略是&#34; onPublishEndAsync&#34; 请建议。
答案 0 :(得分:0)
如果您的CD服务器有另一个数据库,那么您应该将该服务器的配置更改为:
<locations hint="list:AddCrawler">
<crawler type="Sitecore.ContentSearch.SitecoreItemCrawler, Sitecore.ContentSearch">
<Database>NAMEOF-CD1-DATABASE</Database>
<Root>/sitecore</Root>
</crawler>
</locations>
编辑:我看到你有&#39;网络&#39;跨服务器的数据库,因此以上不适用于您的情况。
同时检查您是否启用了可伸缩性设置(在缩放指南4.1中说明)。如果未启用此选项,则在(远程)CD服务器上将不会触发在CM服务器上触发的事件。 http://sdn.sitecore.net/Reference/Sitecore%207/Scaling%20Guide.aspx
再次编辑:我发现这篇文章解释了不同的更新策略。你应该看一下RemoteRebuildStrategy。此策略允许CD服务器侦听重建事件。 http://www.sitecore.net/Learn/Blogs/Technical-Blogs/John-West-Sitecore-Blog/Posts/2013/04/Sitecore-7-Index-Update-Strategies.aspx