虚拟目录和尾部斜线

本文关键字:尾部 虚拟 | 更新日期: 2023-09-27 18:26:22

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

> Default Web Site
    > Site1
    > Site2

这个想法是他们应该回复以下URL:

  • localhost/Site1
  • localhost/Site2

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

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

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

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

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

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

> Default Web Site
> Site1
> Site2

IIS配置中是否缺少某些内容?

虚拟目录和尾部斜线

更改端口号并尝试

两个网站的端口都与默认网站端口号不同

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

希望这会有所帮助。

原来这是一个已知的问题。经过更多的研究,我发现这是一个尾部斜杠问题,我使用IIS URL重写来解决这个问题,如这里和这里所建议的