我有两个IIS站点指向不同的物理文件夹。这是能够区分网络。配置文件和组件的使用的网站 数据库是设定为点对同样的实例,这两个站点 在网。config配置开始从不同的部分 该结构是这样的:

  • /客户/content/home/default

  • /客户/content/home/内联网

到目前为止一切顺利。

现在,问题是,我能够检索内容不属于实际的网站进入其完整的路径。Ie。

http://www.default.com/sitecore/content/home/intranet.aspx <-这不应该被允许的,因为 www.default.com 配置 /sitecore/content/home/default 作为根。

是否有任何内在的机制,以dissallow这个或者我们的子类itemresolver作"交叉点"-请求非法的。

有帮助吗?

解决方案

这是什么做如何一套解决的项目,我发现有3个不同的网址用于每一个项目。例如说我有以下结构:

-sitecore
  -content
    -home
      -page1

我可以访问页1无论是通过:

  • http://mysite/sitecore/content/home/page1.aspx
  • http://mysite/page1.aspx
  • http://mysite/home/page1.aspx

但是知道这不会帮助解决您的问题。最好的解决方案,我可以建议是使用安全。然而,如果这两个网站需要匿名访问的问题是你怎么控制这个吗?

我想,既然你们两个单独的网络。config的你还需要独立客户的配置部分。因此,我们可以做的是创建一个管道运行的进程的一部分http请求开始管道(在网。config如/配置/客户/管道/httpRequestBegin)创建一个为每个网站和更新有关网页。config。在这个过程被称为它可以创建一个虚拟用户都属于一个群组,这限制了访问的网站的用户的要求。

有一些代码 在这里, 这显示如何创建一个虚拟用户:

在这里, 在管道:

希望这可以帮助:-)

其他提示

好吧,如果该内联网项目(并低于)是受保护客户的安全,它不应该以问题也不可能进入:)

如果你无法处理它与安全然后我会去的ItemResolver.

欢呼

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top