2

更新:这个问题是由别名引起的。请看下面我的回答。

我正在尝试在 Sitecore 6.5 中实现一个多站点环境,如下所示:

站点核心树

如您所见,“Corporate”文件夹下有一个主站点,“Microsites”文件夹下有几个子站点。我遇到的问题是我需要子站点存在于同一个域中。例如:

  • mysite.com/(主站点)
  • mysite.com/subsite(子网站 1)
  • mysite.com/subsite2(子网站 2)

到目前为止,这是我在我的网站集中配置它的方式:

<sites>
    ...
    <site name="subsite" hostName="mysite.com" virtualFolder="/subsite" physicalFolder="/subsite" rootPath="/sitecore/content/microsites/subsite" startItem="/home" ...
    <site name="subsite2" hostName="mysite.com" virtualFolder="/subsite2" physicalFolder="/subsite2" rootPath="/sitecore/content/microsites/subsite2" startItem="/home" ...
    <site name="website" hostName="mysite.com" virtualFolder="/" physicalFolder="/" rootPath="/sitecore/content/corporate/" startItem="/home" ...
    ...
</sites>

在大多数情况下,Sitecore 能够仅根据 virtualFolder 路径成功地将我传送到子站点。但是,我遇到的问题是,如果我的子站点中的项目与我在公司主站点中的名称相同,Sitecore 将始终尝试从公司主站点加载该项目。

例如,假设我有一个名为About的项目,它作为主站点的子站点以及我的一个子站点中存在。通过导航到mysite.com/subsite/about,URL 将保持不变,但是,Sitecore 将从主站点提供 About 页面。如果该项目在子站点的树中称为AboutUs ,则一切正常。

关于如何解决此问题的任何想法?

4

2 回答 2

1

让我试一试:

<sites>

<site name="subsite" hostName="mysite.com" virtualFolder="/" physicalFolder="/subsite" rootPath="/sitecore/content/microsites/subsite" startItem="/subsite" ...

<site name="subsite2" hostName="mysite.com" virtualFolder="/" physicalFolder="/subsite2" rootPath="/sitecore/content/microsites/subsite2" startItem="/subsite2" ...

<site name="website" hostName="mysite.com" virtualFolder="/" physicalFolder="/" rootPath="/sitecore/content/corporate/" startItem="/home" ...

</sites>

*我没有在我的本地机器上尝试过这个代码,因为我需要在我的本地网站上创建这个结构。

试试这个,请告诉我。

参考:http ://sdn.sitecore.net/SDN5/Articles/Administration/Configuring%20Multiple%20Sites/Adding%20New%20Site/Examples.aspx

于 2013-01-09T13:28:30.013 回答
1

好的,谜团解开了……哇。

事实证明,我的站点配置是正确的,但是,我为大多数指向主站点的第一级项目(例如关于)设置了别名。删除它们解决了问题。如果您仔细阅读这个问题,非常感谢您抽出宝贵的时间。

于 2013-01-09T17:48:02.383 回答