我们如何将两个sitecore网站(单独的实例)合并到一个sitecore实例中

时间:2015-07-28 06:19:06

标签: migration sitecore

我需要设计一个解决方案,我可以将位于两个独立的sitecore实例中的两个网站合并到一个实例中。如果在编写自定义应用程序以执行迁移之前有任何可以实现相同或者我应该考虑的所有内容,我真的很感激有人可以指出我的工具。

由于

4 个答案:

答案 0 :(得分:5)

除了已经提到的所有内容:

Sitecore项目

如上所述,您可以使用RAZL合并内容(推荐),或者您可以创建Sitecore包甚至序列化项目,然后移动然后反序列化。

如果这些是当前Sitecore的两个完全独立的实例,没有依赖关系,那么我建议您将当前的解决方案组织到Sitecore内容树中的单独文件夹中。我会这样做:

  • 内容
  • 布局(所有布局,渲染,子布局甚至占位符)
  • 媒体
  • 模板

如果您在两个网站中都使用词典,那么如果您还没有这样做,请将它们移到单独的词典域中。

make it multisite compatible的方式构建主要内容。在迁移之前执行此操作可能会更好,但您也可能会破坏代码中的任何现有查询,具体取决于它们的结构。

小心Home项。移动/重新使用安装了默认Sitecore安装的主项目是很常见的。确保两个实例之间的guid不同。 RAZL对于向您显示这些“重复”非常有用

希望您的Sitecore项目是序列化的(使用TDS或Unicorn),这将帮助您指出您对默认项目和任何潜在冲突区域所做的任何自定义。

<强>管道

如果每个项目需要不同的管道,则可能需要Site Specific Link Provider for your multisite implementation

链接提供商

如果您有不同的要求,这里是site specific link provider的其他实现。

多个项目

如果您的代码库有2个单独的项目,合并这些项目可能非常耗时。您可能希望将它们分开,而是从单个解决方案中发布多个项目:

如果您有冲突,可能必须将文件结构重新组织到单独的项目文件夹中(确保更新Sitecore布局/子布局/渲染器以匹配)。

答案 1 :(得分:2)

我不知道有任何工具可以执行此操作,但您需要在每个实例中执行某些操作才能使它们共存而不会出现问题:

修补程序文件

首先确保将与默认设置不同的任何配置更改修补到特定于站点的包含文件

http://sitecore-community.github.io/docs/documentation/Sitecore%20Fundamentals/Patch%20Files/ -

通过这种方式,您可以跟踪每个网站的设置。

<强>提供商

您可能会发现每个网站都有不同的提供商设置,您可以使用切换提供商来解决这个问题

http://sitecoreskills.blogspot.co.uk/2014/02/a-switching-link-provider.html

http://makandracards.com/hhogdev/30779-sitecore-switching-provider

网络根结构

您应该忍受Web根目录中的文件具有特定于站点的文件夹以避免冲突,例如

/ site1 / css,/ site1 / layouts

管道处理器

如果您有每个站点的任何自定义管道处理器,您需要使这些处理器特定于站点并确保它们仅针对相应的站点运行。

Sitecore项目

您应该确保您的Sitecore项目具有与您的webroot结构类似的站点特定文件夹,例如templates / site1 / page template,templates / site2 / page template

全球性的asax

您应该确保在global.asax文件中启动时声明的任何内容都不会导致问题,例如任何自定义路由

答案 2 :(得分:2)

除@golden grahams列表外,请考虑以下内容:

  1. 安全性:确保每个系统中定义的角色没有冲突,并且您对sitecore树的共享元素所做的自定义安全性更改不会发生冲突。
  2. 模板:您可能拥有相同的共享模板,但具有不同的GUID。或者您可能拥有最初相同GUID但已单独进化的项目。在所有情况下,您都需要确保合并冲突/公共项目或将其作为不同的项目。
  3. 模块:如果您在两个网站上使用任何模块,则需要查找您所做的任何特定于网站的配置,并尝试解决它们之间的冲突。
  4. 分析:甚至不尝试合并您的DMS数据(或xDB数据)。在大多数情况下,这是不值得的。

答案 3 :(得分:0)

就工具而言,我建议你看看Razl from Hedgehog Development我过去曾成功地使用它来完成相关任务。

此外,您还想获取一个好的文件比较工具,如WinMerge或KDiff来合并您的配置条目。