站点未在经典管道模式下重定向到默认文档

时间:2011-04-20 23:07:24

标签: asp.net iis-7.5 integrated-pipeline-mode

IIS 7.5
Windows 7 64-bit
.NET 4.0

我在IIS 7.5中有一个.NET 4.0站点。默认文档设置为home.aspx。

如果应用程序池托管管道模式设置为“经典” http://localhost/mysite显示以下错误

Server Error in '/mysite' Application.
--------------------------------------------------------------------------------

The resource cannot be found. 
Description: HTTP 404. The resource you are looking for (or one of its dependencies) could have been removed, had its name changed, or is temporarily unavailable.  Please review the following URL and make sure that it is spelled correctly. 

Requested URL: /mysite


--------------------------------------------------------------------------------
Version Information: Microsoft .NET Framework Version:4.0.30319; ASP.NET Version:4.0.30319.1 

如果我转到http://localhost/mysite/home.aspx,网站会正确显示。

如果我使用“Integrated”作为托管管道,则使用任一路径正确显示该站点。

我已尝试针对早期IIS版本的EnableExtensionlessUrls修复程序,并将默认文档信息直接放在web.config中。这些都不适用于“经典”管道模式。

知道为什么会这样吗?

1 个答案:

答案 0 :(得分:1)

KB980368 (A [sic] update is available that enables certain IIS 7.0 or IIS 7.5 handlers to handle requests whose URLs do not end with a period)引入了一个错误,它也被引入到Windows 7 / 2008R2 Service Pack 1中。当我们推出WebMatrix Web主机验证所需的此修补程序时,我们发现了这个错误。

请参阅我之前的问题和答案:

  

ASP.NET 2.0 and 4.0 seem to treat the root url differently in Forms Authentication

我们用MS PSS提出了这个问题,虽然他们已经复制了这个问题,但他们还没有解决这个问题(PSS问题自23/02/11以来一直开放)。到目前为止发生的所有事情都是发布了一篇新的知识产权文章:

Web services may fail on Microsoft Internet Information Services (IIS) 7.5 and Windows 7 Service Pack 1 with .NET Framework 4.0 due to extensionless URL handlers (KB2520479)

文章提出了两个修正案,其中第一个是无效的,另一个对我们来说并不完全理想。

然而,您遇到的问题可能实际上并不相关,但我认为无论如何我都会分享这个问题。