【发布时间】:2010-03-25 16:26:08
【问题描述】:
我在http://support.microsoft.com/kb/298408 中读到,IIS6.0 会自动响应缺少点的 URL 的“礼貌重定向”(HTTP 301)。
当浏览器请求诸如http://www.servername.de/SubDir 之类的URL 时,浏览器将被重定向到http://www.servername.de/SubDir/。 URL 末尾包含一个斜杠。
Internet 信息服务器 (IIS) 首先将 SubDir 视为应返回给浏览器的文件。如果找不到此文件,IIS 将检查是否存在具有此名称的目录。如果存在具有此名称的目录,则会向浏览器返回带有 302“对象已移动”响应消息的礼貌重定向。此消息还包含有关带有尾部斜杠的目录的新位置的信息。反过来,浏览器开始对带有斜杠的 URL 发起新的 GET 请求。
这种行为如何与 ASP.NET MVC 等框架相交,后者通常使用不需要或使用点的 URL?
具体来说... ASP.NET MVC 在安装时会“关闭”IIS6.0 的这个功能吗?如果有,怎么做?
我猜不是,而是在 IIS 中完成的请求路由在执行重定向之前将请求发送到 ASPNET。如果有人能解释一下,我将不胜感激。
【问题讨论】:
标签: asp.net-mvc iis