如何在IIS 6(Windows 2003 R2)上configurationASP.NET MVC 3

可能重复:
将ASP.NET MVC部署到Windows Server 2003

我得到了403根目录列表拒绝根目录和404我知道应该存在的行动。

背景:很久以前,我已经构build和部署了一个ASP.NET MVC 2应用程序。 后来我将其升级到MVC 3,它仍然在不更改configuration。 在Windows 2003 R2(标准)初始化设置它是一个痛苦,但几天后(是的,几天)挣扎开始工作。

现在,我必须在另一个不同的服务器(又是2003 R2 Standard)上对同一个应用程序执行相同的操作。

  • .Net 4被安装并允许
  • ASP.NET MVC 3也被安装
  • 默认情况下,IIS设置为使用.net 4
  • 我validation应用程序扩展中使用的aspnet_isapi.dll是从版本4.0.30319 .NET asemblies文件夹。
  • 我还将通配符映射添加到aspnet_isapi.dll,并取消选中validation文件存在。
  • 在身份validation方法中的目录安全下我已禁用匿名访问并启用集成Windows身份validation(与其工作的服务器上的身份validation相同)
  • 我已经复制相同的web.config与

<authentication mode="Windows" />

<authorization> <deny users="?" /> </authorization>

  • 我已经设置了读取和执行,列出文件夹内容和读取networking服务帐户(应用程序池正在工作)。 此外,我已设置为networking帐户,IIS_WPG,ASPNET和IUSR_MAchineName相同。
  • 我没有一个EnableExte nsionlessUrls,但即使我创build它,并将其设置为true或false,这并没有帮助。
  • 我也试过http://haacked.com/archive/2010/12/22/asp-net-mvc-3-extensionless-urls-on-iis-6.aspx ,它没有帮助。

但我不断得到403目录列表拒绝的根和404的行动,我知道应该存在。

然后使用Web Platform安装程序重新安装,并可能更新.net,asp.net等。然后,我注意到IIS被重置为默认值。 所以我再次添加了通配符映射。 不,运气还是403。

我从工作服务器设置导出configuration文件,并使用这些configuration创build新的默认应用程序池和新的默认网站。

尽pipe如此,我还是得到了403个目录列表拒绝/和404的任何行动,我尝试。

获取404和403的另一个原因是缺lessGlobal.asax,这要归功于将ASP.NET MVC部署到Windows Server 2003我也能够修复它。