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 76

11 ответов:

попробуйте переключиться в режим интеграции. Смотрите следующую тему:

IIS 7, HttpHandler и HTTP ошибка 500.21

пожалуйста, выполните следующие действия:

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 находится на этом скриншоте.

ASP.NET Server Role

чтобы исправить проблему, я попытался запустить

%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- > веб-сервер - > разработка приложений (они основаны на ответе Джереми Кука выше):

enter image description here

затем нажмите кнопку рядом с функциями и убедитесь, что проверяется следующее:

enter image description here

затем нажмите кнопку Далее и установите. В этот момент ошибка ушла для меня. Удачи вам!

это потому, что 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 для отдельного пула приложений:

  1. нажмите на приложение бассейн
  2. найти WebDAV Authoring Tools в список
  3. Нажмите, чтобы открыть его
  4. клик 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, поддержку веб-сервера и, наконец, службу активации процесса Затем автоматически появляется диалог о том, что роль "веб-сервер" также должна быть добавлена.