虚拟目录和尾部斜杠

时间:2015-12-11 10:06:12

标签: c# asp.net iis iis-7

我在IIS中的默认网站节点下发布了两个网站:

> Default Web Site
    > Site1
    > Site2

我们的想法是他们应该回复以下网址:

  • 本地主机/站点1
  • 本地主机/站点2

网站受身份验证保护,因此第一页是登录页面。我得到的URL如下:

http://localhost/Site1/Account/Login?ReturnUrl=%2fSite1

在我输入用户名和密码之后,网站无法将我重定向到主页并始终登陆登录页面(即使身份验证已正确完成,因为如果我写了网站的URL,这将有效正确地)。

但是,如果我强制使用起始URL(在末尾添加反斜杠):

http://localhost/Site1/Account/Login?ReturnUrl=%2fSite1/

网站正常运作。此外,即使我将其作为独立网站(不是默认网站的应用程序)发布,网站也能正常运行:

> Default Web Site
> Site1
> Site2

我在IIS配置中遗漏了什么?

2 个答案:

答案 0 :(得分:1)

更改端口号并尝试

默认网站端口号

的两个站点继承的端口

更好的做法是在root上创建每个应用程序/站点并为它们提供不同的端口。

希望这会有所帮助。

答案 1 :(得分:0)

原来这是一个已知问题。 通过一些更多的研究,我发现它是一个尾随的斜线问题,我按照建议herehere

使用IIS URL重写进行了解决。