1

在我们的网站上,我们有以下结构:

网站名称
  -全球的
    -英语
  -英国
    -英语

对于 Global > English 页面,该页面的链接显示为:

链接到文档

/全球/zh/

替代链接

http://english

所以“文档链接”是正确的,但替代链接不正确。在英国 > 英语页面上,我得到了正确的“文档链接”。我已尝试发布整个站点,但由于超时而无法发布(我已尝试增加所有超时时间,但发布需要一个小时,因此出现奇怪的网络错误),然后重新发布整个“全局”节点和子文档并不能解决问题。还有其他方法可以解决这个问题吗?另外,“替代链接”的目的是什么?这些是如何确定的?

4

1 回答 1

3

正如我在您的原始帖子中所建议的那样,我设置了一个非常基本的 Umbraco v6.1.2 实例(在 Visual Studio 中使用 NuGet),它具有单一的文档类型和与您所描述的相同的顶级结构。

所以:

  1. 在 web.config 中将 umbracoUseDirectoryUrls 设置为 true
  2. 名为“BasicPage”的文档类型有一个名为“umbracoUrlName”的属性。这允许您根据节点的标题覆盖由 Umbraco 创建的路径。我假设您的文档类型中已经有了它。
  3. 我将两个英文节点都设置为“en”的 umbracoUrlName。
  4. 我向根节点添加了两个主机名 - “localhost”和“mobile.localhost”
  5. 我发布了 Root 节点和所有以下节点

Umbraco 截图

如您所见,“文档链接”和“替代链接”都符合预期。

我怀疑你可能是对的,试图让网站发布可能会解决问题,所以你可能必须逐个发布网站,从一个分支到另一个分支。

但是,我建议像我所做的那样创建一个测试 Umbraco 实例,然后比较你所拥有的。

或者,如果整个内容结构将使用相同的主机名提供服务,您当然可以完全删除主机名设置,因为这些可以简单地在 IIS 中控制。Umbraco 实际上并不需要了解它们,除非您在同一内容树中有不同的不同站点。

于 2013-07-18T09:55:23.963 回答