虚拟路径问题

时间:2019-02-15 12:24:05

标签: c# asp.net asp.net-mvc iis iis-10

我目前正在尝试在单个IIS网站中自动创建多个应用程序。 每个应用程序代表开发人员/功能的功能分支。

问题是,遗留应用程序不是真正为在不在根目录上的路径中运行而制作的。因此,应用程序认为(并且必须认为)正在运行的路径必须为“ /”。 为了改变这一点,它将与几乎与url相关的所有内容一起进行重组和重新测试。所以现在,这不是一个选择。

我目前所拥有的:

[Features (Site)]
  - [Feature_A (App)]
  - [Feature_B (App)]

这导致功能A分别在http://server/Feature_A和功能B下可用。

现在,当请求到达应用程序时,应用程序必须认为调用该请求的URL是“ http://server/”(或路径为“ /”)。

选择正确的应用程序是通过IIS URL-Rewrite模块实现的,效果很好。 我使用Cookie来决定要调用哪个应用,然后将原始的“ /”重写为“ / Feature_A /”

但是现在,当试图消除应用程序中Path的“ / Feature_A”部分时,这似乎是不可能的。

Application.Context.RewritePath(newPath); // throws exeption -> different application

didnt确实可以解决问题,因为新的路径'/'指向不同的应用程序,而RewritePath不喜欢这样。

应用程序内甚至IIS中是否有任何方法可以使应用程序认为它在根路径上运行?

谢谢。

0 个答案:

没有答案