Sitecore 网站作为现有非 Sitecore 网站的子网站

Sitecore website as a subsite of an existing non-Sitecore website

我们有两个网站:

  1. 第一个是非 Sitecore 网站(例如 www.non-sitecore-site.com)
  2. 第二个是 Sitecore 网站(例如 www.sitecore-site.com

我的任务是将第二个(基于 Sitecore 的网站)作为第一个网站的子站点,可通过 www.non-sitecore-site.com/sitecore-site.

我尝试在 IIS 中创建一个虚拟文件夹,将其转换为 Web 应用程序并将其设置为基于 Sitecore 的站点文件夹。但是它不起作用,即使我在 Sitecore 配置文件中配置 virtualFolderphysicalFolder 都等于 "/sitecore-site"。

真的可行吗? 感谢任何帮助。

Sitecore 通过 httpRequestBegin 管道中的管道进程解析站点。 SiteResolver 根据以下条件设置上下文站点:

  • 主机名
  • 虚拟路径
  • 端口号

Sitecore 按顺序处理配置 XML 以找到符合上述条件的第一个站点。由于每个站点都定义了 hostName 属性,Sitecore 首先检查 hostName,然后检查 virtualFolder,默认情况下只是“/”。因此,您要做的第一件事是检查一系列站点定义,以确保将更具体的配置放在顶部,将更通用的配置放在底部。

要将 Sitecore 站点配置为虚拟文件夹,只需将 virtualFolderphysicalFolder 属性设置为相同的值以匹配您的预期路径 '/sitecore-site',即您的站点配置将如下所示:

<site name="yoursite" hostName="www.non-sitecore-site.com" virtualFolder="/sitecore-site" physicalFolder="/sitecore-site" ...

您既不需要创建物理文件夹 'sitecore-sit' 也不需要创建虚拟文件夹 'sitecore-sit'在指向您的 Sitecore 站点的 IIS 中。