【问题标题】:Sitecore multisite - links on Site A to Site B are resolving as paths under site A rather than going to the Site B domain (C#)Sitecore 多站点 - 站点 A 到站点 B 的链接解析为站点 A 下的路径,而不是转到站点 B 域 (C#)
【发布时间】:2018-09-04 21:21:13
【问题描述】:

对不起,如果标题令人困惑,但基本上我有一个主站点站点 A (sitecore/content/Home) 和一个微型站点站点 B (sitecore/content/SiteBHome)。在几页上,我插入了指向站点 B 的 Sitecore 链接。但是,这些链接解析为 /SiteBHome/page 并将我带到 siteA.com/sitebhome/page 而不是 siteB.com/page

我该如何解决这个问题?我有一个指向 siteA.com/sitebhome -> siteB.com 的重定向,但这会丢失路径,只是将我发送到主页,所以我现在将其删除:

<rule name="homepage path Redirect" stopProcessing="true">
  <match url="^second-site-home/?(.*)$" />
  <action type="Redirect" url="http://secondsite.org" redirectType="Found"/>
  <conditions>
    <add input="{HTTP_HOST}" pattern="^(www\.)?mysite.com$" />
  </conditions>
</rule>

我有一个自定义链接提供程序类,目前看起来像这样,但我不确定如何/是否可以修改它以修复我的链接:

using Sitecore.Links;

namespace MySite.Library.CustomSitecore.Pipeline
{
    public class CustomLinkProvider : LinkProvider
    {
        public override UrlOptions GetDefaultUrlOptions()
        {
            UrlOptions urlOptions = base.GetDefaultUrlOptions();
            urlOptions.SiteResolving = true;
            return urlOptions;
        }
    }
}

【问题讨论】:

    标签: c# url hyperlink sitecore multisite


    【解决方案1】:

    原来这是因为我在 SiteB 的站点定义中添加了第二个域:hostName="siteB.com|Bsite.com。 Sitecore 能够找出 hostName 值中的管道,但在解析站点域的链接时,管道会搞砸。我通过添加 targetHostName 属性解决了这个问题,现在链接可以正确解析

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-07-31
      • 1970-01-01
      • 2018-12-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-04-26
      • 1970-01-01
      相关资源
      最近更新 更多