我正在配置一个MVC 3项目,以在IIS的本地安装上工作,遇到了以下500个错误:

处理程序“PageHandlerFactory-Integrated”有一个坏模块 "ManagedPipelineHandler"在其模块列表中。

事实证明,这是因为ASP。Net没有完全安装IIS,即使我在“添加功能”对话框中勾选了该框。为了解决这个问题,我简单地在命令提示符下运行以下命令

%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_regiis.exe -i

如果我使用的是32位系统,它看起来会像下面这样:

%windir%\Microsoft.NET\Framework\v4.0.21006\aspnet_regiis.exe -i

我的问题是,有没有一种方法可以在windows 7的机器上安装IIS来使用。net 4.0 (MVC 3)而不需要额外的步骤?


当前回答

运行cmd 将Aspnet_regiis.exe拖放到命令提示符中: C:\Windows\ Microsoft.NET \ Framework64 \ v2.0.50727 \ type -i(例如Aspnet_regiis.exe -i) 回车 等待该过程完成

好运!

其他回答

要解决这个问题,请尝试修复.net框架4,然后运行该命令

%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_regiis.exe -i

我遇到了这个问题,发现删除以下文件夹有所帮助,即使是非express版本。表达:

C:\Users\ <用户> \ \ IISExpress文档

运行cmd 将Aspnet_regiis.exe拖放到命令提示符中: C:\Windows\ Microsoft.NET \ Framework64 \ v2.0.50727 \ type -i(例如Aspnet_regiis.exe -i) 回车 等待该过程完成

好运!

当我试图将一个应用程序从经典切换到集成时,我在我的一个web服务器上遇到了这个问题。它在我的其他两个服务器上工作得很好,而不仅仅是这一个。它是Server 2012,所以你不能做aspnet_regiis,也没有安装缓存文件夹来尝试修复。在特征下,一切都被正确设置。

运行%windir%\system32\inetsrv\config\applicationHost。我发现了一个关键的缺失位。在我那张没有工作的表格下面,少了两行字:

        <add name="ManagedEngineV4.0_32bit" image="C:\Windows\Microsoft.NET\Framework\v4.0.30319\webengine4.dll" preCondition="integratedMode,runtimeVersionv4.0,bitness32" />
        <add name="ManagedEngineV4.0_64bit" image="C:\Windows\Microsoft.NET\Framework64\v4.0.30319\webengine4.dll" preCondition="integratedMode,runtimeVersionv4.0,bitness64" />

一旦我添加了它们,一切都运行得很好。

我在Windows server 2012上也有类似的问题,在服务器管理器中安装“应用服务器”功能修复了这个问题。