无法从.Net 4.5网站获取除403以外的任何内容


10

方案:带有IIS角色的Clean Server 2008 R2安装。

已安装Framework 3.5(服务器功能)已安装Framework 4.5 RC(MS下载)

被执行

C:\Windows\Microsoft.NET\Framework64\v4.0.30319>aspnet_regiis.exe -i

(我将-iru在现有服务器上使用,但这是一个干净的版本)。

通过文件系统发布(SMB共享)

使用.Net 4.0集成应用程序池将文件夹转换为应用程序

停止/重新启动所有内容。

浏览localhost/TestApp结果为403.14(禁止目录浏览)

我错过了哪一步?该站点是MVC4,针对4.5 RC框架


您是否确定默认文档位于默认文档列表中?
布伦特·帕布斯特

@BrentPabst作为MVC,没有默认文档-它依靠IIS重写URL来确定要执行的控制器/操作。如果失败,那么我会期望收到其他错误消息。感觉好像没有调用URL解析,这通常意味着.Net没有在IIS中正确注册。话虽如此,它已经注册,并且我已经安装了适当的IIS角色(实际上,我现在已经拥有所有 IIS角色),所以我有点不确定如何最好地诊断这一点
基本的

抱歉,我是盲人,错过了4.5 MVC部分。不管哪种方式,为什么在安装4.5之后注册.NET 4.0?实际上,我从未在任何Web服务器上注册.NET,因为安装程序会自动执行。无论如何,我认为您注册了错误的.NET处理程序。但是,使用4.5和MVC,您至少应该看到一个YSOD,表明无法加载全局ASAX。
布伦特·帕布斯特

@BrentPabst我以前必须这样做aspnet_regiis,但只有 .Net 之后安装IIS 时才这样做(似乎很合理)。这里不是这种情况,但是由于很多建议的答案都将其作为问题,因此我认为我可以解决。4.5完全替换4.0。我同意没有收到YSOD很奇怪-正如我说的那样,好像根本就没有将它视为.Net页面
基本

1
很高兴您能全部解决。你的头一定已经准备好爆炸了!
布伦特·帕布斯特

Answers:


21

我有一个类似的问题。这个线程/programming/2374957/asp-net-mvc-on-iis-7-5 为我解决了这个问题。基本上尝试将其添加到您的web.config中:

<system.webServer>
    <modules runAllManagedModulesForAllRequests="true"/> 
</system.webServer>

如果执行该操作,则可以尝试将其删除并安装此修补程序:http : //www.microsoft.com/zh-cn/download/details.aspx? displaylang=en& id=5272


谢谢,解决了。几个小时以来,我一直在不停地打着头。您不会相信我从办公室“ linux guy”那里收到的悲伤。在这种情况下,我认为他有一点...
基本的

1
谢谢!就我而言,runAllManagedModulesForAllRequests并没有帮助,但此修补程序可以。
NateTheGreat

对我来说,runAllManagedModulesForAllRequests也无济于事,但此修复程序确实有帮助–感谢您的链接
Anil Purswani 2013年

你救了我的一天!
labilbe 2015年

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.