处理程序“ExtensionlessUrlHandler-Integrated-4.0”在其模块列表中有一个错误模块“ManagedPipelineHandler”

系统:windows server 2019 IIS10

1、IIS上部署MVC网站,打开后500错误:处理程序的“ExtensionlessUrlHandler-Integrated-4.0”在其模块列表中有一个错误模块“ManagedPipelineHandler”

原因:先安装了.NetFramework V4.X版本,后安装的IIS,导致aspnet_regiis没有注册net4.0

解决方法如下(如果此命令报错,解决方法在下一条记录):
以管理员运行下面的命令注册:
32位机器:
C:\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe -i
64位机器:
C:\Windows\Microsoft.NET\Framework64\v4.0.30319\aspnet_regiis.exe -i

2、在CMD执行注册命令:C:\Windows\Microsoft.NET\Framework64\v4.0.30319\aspnet_regiis.exe -i 异常

Microsoft (R) ASP.NET RegIIS 版本 4.0.30319.0
用于在本地计算机上安装和卸载 ASP.NET 的管理实用工具。
版权所有(C) Microsoft Corporation。保留所有权利。
开始安装 ASP.NET (4.0.30319.0)。
此操作系统版本不支持此选项。管理员应使用“打开或关闭 Windows 功能”对话框、“服务器管理器”管理工具或 dism.exe 命令行工 具安装/卸载包含 IIS8 的 ASP.NET 4.5。
有关更多详细信息,请参见 http://go.microsoft.com/fwlink/?LinkID=216771。
ASP.NET (4.0.30319.0)安装完毕。

解决方法:
使用管理员运行cmd,然后使用dism工具依次执行以下指令即可:
dism /online /enable-feature /featurename:IIS-ISAPIFilter
dism /online /enable-feature /featurename:IIS-ISAPIExtensions
dism /online /enable-feature /featurename:IIS-NetFxExtensibility45
dism /online /enable-feature /featurename:IIS-ASPNET45

3、访问页面时出现错误信息如下:

配置错误 不能在此路径中使用此配置节。如果在父级别上锁定了该节,便会出现这种情况。锁定是默认设置的(overrideModeDefault="Deny"),或者是通过包含 overrideMode="Deny" 或旧有的 allowOverride="false" 的位置标记明确设置的

解决办法:
出现这个错误是因为 IIS 10 采用了更安全的 web.config 管理机制,默认情况下会锁住配置项不允许更改。要取消锁定可以以管理员身份运行命令行 %windir%\system32\inetsrv\appcmd unlock config -section:system.webServer/handlers 。其中的 handlers 是错误信息中红字显示的节点名称。

如果modules也被锁定,可以运行%windir%\system32\inetsrv\appcmd unlock config -section:system.webServer/modules

注意:要以管理员身份运行才可以,默认不是管理员身份,方法,在开始菜单中的搜索程序与文件输入CMD,就会在上方出现一个CMD.EXE,在这个CMD.EXE文件上点击键,选择“以管理员身份运行”,打开命令行窗口,输入以上命令即可。
分别输入:%windir%\system32\inetsrv\appcmd unlock config -section:system.webServer/handlers
然后回车
再输入:%windir%\system32\inetsrv\appcmd unlock config -section:system.webServer/modules 回车

你可能感兴趣的:(处理程序“ExtensionlessUrlHandler-Integrated-4.0”在其模块列表中有一个错误模块“ManagedPipelineHandler”)