【问题标题】:Accessing sitecore content with virtual folders使用虚拟文件夹访问站点核心内容
【发布时间】:2012-02-21 13:05:54
【问题描述】:

问题

我们有两个站点,一个域,我们想在域上设置一个可以访问第二个站点的虚拟目录。

IIS 虚拟目录似乎无法解决问题,sitecore 似乎无法正常运行。

使用 sitecore 是否有潜在的解决方法?

环境

我们的两个网站的文件夹结构如下:

  • C:\Sitecore\Site1

  • C:\Sitecore\Site2

站点 1 和站点 2 都连接到相同的 Web、核心和主数据库。

要在浏览器中访问两个站点的 cms,我们这样做:

  • www.mysite1.com/sitecore

我们从站点 1 的 cms 为站点 1 和站点 2 创建内容、布局和模板。

解决方案

我们所做的是在第一个站点 web.config 中我们将站点定义为正常:

<site name="site1" hostName="mysite1.com" virtualFolder="/" physicalFolder="/" rootPath="/sitecore/content" startItem="/MyItem1/" database="web" domain="extranet" allowDebug="true" cacheHtml="true" htmlCacheSize="10MB" registryCacheSize="0" viewStateCacheSize="0" xslCacheSize="5MB" filteredItemsCacheSize="2MB" enablePreview="true" enableWebEdit="true" enableDebugger="true" disableClientData="false" />

在第二个站点 web.config 中,我们对站点的定义略有不同:

<site name="site2" hostName="mysite1.com" virtualFolder="/Site2" physicalFolder="/" rootPath="/sitecore/content" startItem="/MyItem2/" database="web" domain="extranet" allowDebug="true" cacheHtml="true" htmlCacheSize="10MB" registryCacheSize="0" viewStateCacheSize="0" xslCacheSize="5MB" filteredItemsCacheSize="2MB" enablePreview="true" enableWebEdit="true" enableDebugger="true" disableClientData="false" />    

我们在第二个站点定义了一个虚拟文件夹,您可以在上面注意到它是唯一的区别以及明显的起始项区别。

站点 1 将正常响应。您可以访问 mysite1.com,它将加载与网站 1 相关的启动项。

当您访问 mysite1.com/Site2/ 时,它将加载在第二个站点中定义的虚拟文件夹并加载其相关的启动项。

这几乎就像一个魅力。

最后@Mark Ursino 感谢您的帮助。

注意事项

您需要启用站点核心可扩展性配置才能使上述任何一项工作

【问题讨论】:

  • 请从您的web.config 提供&lt;site ...&gt; 配置
  • 添加了配置,这样你就可以看到我实际上想要做什么。
  • 知道了。嗯,我有点困惑 myitem/Partners/UK//Partners/NZ/ 的关系...是 myitem 的其中之一吗?
  • 是的,很抱歉只有一个站点,开始项目可以说:/MyItem/ 以上已修改。
  • 那么当您访问www.example.com/myitem-no2/ 时,它会呈现该项目吗?但是当您调用 LinkManager.GetItemUrl(...) 时,它会呈现为 www.example.com/sitecore/content/myitem/myitem-no2/?我仍然不确定到底是什么问题。

标签: url content-management-system sitecore sitecore6


【解决方案1】:

据我所知,我认为您需要在配置中进行一些更改以将“子文件夹站点”设置为virtualFolder

<site virtualFolder="/subsite" physicalFolder="/subsite" rootPath="/sitecore/content" startItem="/MyItem/" database="web" domain="extranet" allowDebug="true" cacheHtml="true" htmlCacheSize="10MB" registryCacheSize="0" viewStateCacheSize="0" xslCacheSize="5MB" filteredItemsCacheSize="2MB" enablePreview="true" enableWebEdit="true" enableDebugger="true" disableClientData="false" />

请注意,virtualFolder="/subsite"physicalFolder="/subsite" 指向子文件夹,但我认为您并不需要该物理文件夹。

Reference used.

【讨论】:

  • 我认为这行得通?我对自己的知识更加好奇,因为我从来没有做过这样的事情,不得不去查。
  • 我已经重写了整个问题,以便您获得更好的想法。 @Mark Ursino
【解决方案2】:

【讨论】:

  • 关闭但不完全符合具体问题的要求。不过,我喜欢 Alex Shyba 在他的帖子中链接到我的博客的方式! :-D
猜你喜欢
  • 2013-06-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-11-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多