500.21 плохой модуль "ManagedPipelineHandler" в его списке модулей
Я получаю сообщение об ошибке:
ошибка HTTP 500.21-Внутренняя ошибка сервера Обработчик " CloudConnectHandler "имеет плохой модуль" ManagedPipelineHandler " в своем списке модулей
мой веб.конфигурационный файл выглядит так:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.webServer>
<handlers>
<add name="CloudConnectHandler" verb="*" path="CloudConnect.aspx" type="CloudConnectHandler" resourceType="Unspecified" />
</handlers>
</system.webServer>
<system.web>
<customErrors mode="Off" />
<compilation debug="true" targetFramework="4.0" batch="false">
<assemblies>
<add assembly="System.Xml.Linq, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089" />
<add assembly="System.Core, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089" />
<add assembly="Microsoft.CSharp, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A" />
</assemblies>
</compilation>
<pages>
<controls>
<add tagPrefix="ajaxToolkit" assembly="AjaxControlToolkit" namespace="AjaxControlToolkit" />
</controls>
</pages>
<identity impersonate="true" />
<authentication mode="Forms" />
</system.web>
<system.codedom>
<compilers>
<compiler language="c#;cs;csharp" extension=".cs" warningLevel="4" type="Microsoft.CSharp.CSharpCodeProvider, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<providerOption name="CompilerVersion" value="v4.0" />
<providerOption name="WarnAsError" value="false" />
</compiler>
</compilers>
</system.codedom>
<appSettings>
<add key="CloudConnectAuthorization" value="xxxx" />
<add key="ConnectionInfo" value="xxxx" />
<add key="ConnectionString" value="xxxx" />
<add key="DefaultChannel" value="xxxx" />
<add key="LoginValidationConnectionString" value="xxxx" />
</appSettings>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="protobuf-net" publicKeyToken="257b51d87d2e4d67" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-2.0.0.640" newVersion="2.0.0.640" />
</dependentAssembly>
</assemblyBinding>
</runtime>
</configuration>
есть много советов, указывающих на то, что asp.net не установлен правильно. Обычное исправление заключается в запуске:
%windir%Microsoft.NETFramework64v4.0.30319aspnet_regiis.exe -i
или
%windir%Microsoft.NETFrameworkv4.0.21006aspnet_regiis.exe -i
я запустил оба, без каких-либо ошибок. Я перезапустил IIS, но проблема все еще сохраняется. Сайт использует пул приложений. Запускается пул приложений, .net framework = 4.0, управляемый конвейер = Classic, Identity = LocalSystem.
Я провел последние пару часов, пытаясь выяснить, в чем проблема. Я надеюсь, что кто-то может помочь.
11 ответов:
пожалуйста, выполните следующие действия:
1) запустить командную строку от имени администратора.
2) введите любую из двух строк ниже в командной строке:
%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe -i
или
%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_regiis.exe -i
Я столкнулся с этой ошибкой на новой сборке Windows Server 2012 R2. IIS и .NET 4.5 были установлены, но ASP.NET роль сервера (версия 4.5 в моем случае) не была добавлена. Убедитесь, что версия ASP.NET вам нужно было добавить / установить как ASP.NET 4.5 находится на этом скриншоте.
чтобы исправить проблему, я попытался запустить
%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_regiis.exe -я
однако это не работает для меня. Я должен запустить другую командную строку в окне CMD от имени администратора. Вот команда:
dism / online / enable-feature / featurename: IIS-ASPNET45
или
система DISM /онлайн /включение функция параметр /FeatureName:ИИС-ASPNET45 /все
Надежда это поможет.
Я получил эту ошибку на моем ASP.Net 4.5 приложение на Windows Server 2012 R2.
перейдите в меню Пуск - > "включить или выключить функции windows". Ко мне подошел волшебник.
щелкните рядом с ролями сервера
Мне пришлось проверить их, чтобы заставить это работать, расположенный под веб-сервером IIS- > веб-сервер - > разработка приложений (они основаны на ответе Джереми Кука выше):
затем нажмите кнопку рядом с функциями и убедитесь, что проверяется следующее:
затем нажмите кнопку Далее и установите. В этот момент ошибка ушла для меня. Удачи вам!
это потому, что IIS 7 использует обработчики http из обоих
<system.web><httpHandlers>
и<system.webServer><handlers>
. если вам нужен CloudConnectHandler в вашем приложении, вы должны добавить<httpHandlers>
раздел с этим обработчиком на<system.web>
:<httpHandlers> <add verb="*" path="CloudConnect.aspx" type="CloudConnectHandler" /> </httpHandlers>
, а также добавить
preCondition
атрибут обработчика в<system.webServer>
:<handlers> <add name="CloudConnectHandler" verb="*" path="CloudConnect.aspx" type="CloudConnectHandler" preCondition="integratedMode" /> </handlers>
надеюсь, что это помогает
для меня, я получаю это сообщение об ошибке при использовании
PUT
илиDELETE
к WebAPI. Я также попытался перерегистрировать .NET Framework, как было предложено, но безрезультатно.я смог исправить это, отключив WebDAV для моего отдельного пула приложений, это остановило ошибку "плохой модуль" при использовании
PUT
илиDELETE
.отключить WebDAV для отдельного пула приложений:
- нажмите на приложение бассейн
- найти
WebDAV Authoring Tools
в список- Нажмите, чтобы открыть его
- клик
Disable WebDAV
в правом верхнем углу.этой ссылке где я нашел инструкции, но не очень понятно.
у меня была эта проблема в Windows 10, когда мне нужны были IIS вместо IIS Express. Новый веб-проект не удался с ошибкой OP. Исправить было
Control Panel > Turn Windows Features on or off > Internet Information Services > World Wide Web Services > Application Development Features
ТИК
ASP.NET 4.7
(в моем случае)
У меня была эта проблема каждый раз, когда я развернул новый сайт или обновил существующий с помощью MSDeploy.
я смог исправить это, выгрузив домен приложения с помощью MSDeploy со следующим синтаксисом:
msdeploy.exe -verb:sync -source:recycleApp -dest:recycleApp="Default Web Site/myAppName",recycleMode=UnloadAppDomain
вы также можете остановить, запустить или переработать пул приложений - более подробную информацию здесь:http://technet.microsoft.com/en-us/library/ee522997%28v=ws.10%29.aspx
в то время как решение Армаана помогло получить я отклеился, это не заставило проблему уйти навсегда.
Если это IIS 8 перейдите на панель управления, включите/выключите функции windows и включите плохую "активацию именованного канала", а затем перезапустите IIS. Надеюсь, то же самое работает с IIS 7
Я обнаружил, что порядок добавления ролей и компонентов имеет важное значение. На новой системе я активирую роль "сервер приложений" и там явно проверяю .net, поддержку веб-сервера и, наконец, службу активации процесса Затем автоматически появляется диалог о том, что роль "веб-сервер" также должна быть добавлена.