因为我已经浪费了5天用.cshtml asp.net网页来解决这个问题,我想为什么不问大师。
HTTP错误404.4 - 未找到 您要查找的资源没有与之关联的处理程序。 详细的错误信息 模块IIS Web核心 通知MapRequestHandler 处理程序尚未确定 错误代码0x80070002 请求的URL xxxxxxxxx:80 / bakery / default.cshtml 物理路径xxxxxxxx \ bakery \ default.cshtml 登录方法匿名 登录用户匿名
<system.webServer>
<security>
<requestFiltering>
<fileExtensions>
<remove fileExtension=".cshtml" />
<add fileExtension=".cshtml" allowed="true" />
</fileExtensions>
</requestFiltering>
</security>
<validation validateIntegratedModeConfiguration="true" />
<modules runAllManagedModulesForAllRequests="true" />
<handlers accessPolicy="Read, Script, Write, Execute">
<clear />
<remove name="cshtml-Integrated-4.0" />
<remove name="cshtm-Integrated-4.0" />
<remove name="cshtml-ISAPI-4.0_32bit" />
<remove name="cshtml-ISAPI-4.0_64bit" />
<add name="cshtml-ISAPI-4.0_32bit" path="*.cshtml" verb="GET,HEAD,POST,DEBUG" resourceType="Unspecified" requireAccess="Script" scriptProcessor="C:\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness32" responseBufferLimit="0" />
<add name="cshtml-ISAPI-4.0_64bit" path="*.cshtml" verb="GET,HEAD,POST,DEBUG" resourceType="Unspecified" requireAccess="Script" scriptProcessor="C:\Windows\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness64" responseBufferLimit="0" />
</handlers>
</system.webServer>
作为记录: 是安装.NET 4.0,这是一个明显的要求 是的,这个应用程序的应用程序池设置为“允许32位应用程序”,应用程序池设置为在集成模式下运行。 服务器:Windows Server 2008 r2 从上面可以看到runAllManagedModulesForAllRequests =“true”设置为true。所以请不要问我这些愚蠢的问题 已完成任何故障排除已经完成。
答案 0 :(得分:0)
我遇到了同样的问题,我正在使用虚拟主机服务器,我通过将所有MVC3和Razor dll复制到bin文件夹中解决了这个问题。
如果您在“应用”中创建网络: 右键单击您的Web项目,选择“添加可部署的依赖项”,然后重新构建,然后尝试部署它。
如果您创建“网站”,而不是应用程序: 将这些手动复制到bin文件夹中:
Microsoft.Web.Infrastructure.dll System.Web.Helpers.dll System.Web.Mvc.dll程序 System.Web.Razor.dll System.Web.WebPages.Deployment.dll System.Web.WebPages.dll System.Web.WebPages.Razor.dll