500.21 모듈 목록에 잘못된 모듈“ManagedPipelineHandler”가 있습니다.


83

오류가 발생합니다.

HTTP 오류 500.21-내부 서버 오류 처리기 "CloudConnectHandler"의 모듈 목록에 잘못된 모듈 "ManagedPipelineHandler"가 있습니다.

내 web.config 파일은 다음과 같습니다.

<?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.NET\Framework64\v4.0.30319\aspnet_regiis.exe -i

또는

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

나는 오류없이 둘 다 실행했습니다. IIS를 다시 시작했지만 문제가 계속 발생합니다. 사이트에서 응용 프로그램 풀을 사용하고 있습니다. 앱 풀이 시작되었습니다. .net framework = 4.0, Managed Pipeline = Classic, Identity = LocalSystem.

나는 문제가 무엇인지 알아 내기 위해 지난 몇 시간을 보냈다. 누군가 도울 수 있기를 바랍니다.

답변:


18

통합 모드로 전환 해보십시오. 다음 스레드를 참조하십시오.

IIS 7, HttpHandler 및 HTTP 오류 500.21


통합으로 전환하여 다른 오류가 발생했습니다. 그것을 고치면 모든 것이 제대로 작동하기 시작했습니다. 감사합니다.
George Mastros 2014 년

이것에 대한 "다운 투표". 이미 통합 모드를 활성화했습니다. @Armaan은 간단하지만 완벽하게 대답합니다.
echology

이 대답은 유효하며 내 문제를 해결하고 NET 3.5를 사용했고 500.21 오류가 발생했습니다. 통합 모드로 전환하면 문제가 해결되었습니다.
freedeveloper

185

다음 단계를 따르십시오.

1) 관리자 권한으로 명령 프롬프트를 실행하십시오.

2) 명령 프롬프트에 아래 두 줄 중 하나를 입력하십시오.

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

또는

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

2
SO에 오신 것을 환영하고 귀하의 답변에 감사드립니다. 이 답변은 간결함으로 인해 검토 용으로 표시되었습니다. 귀하의 답변은 기술적으로 정확할 수 있지만, OP에 근본적인 문제가 무엇인지, 그리고 귀하의 답변이 작동하는 이유를 설명하는 더 많은 텍스트로 개선 될 수 있습니다.
소프트웨어 엔지니어

8
여기에 더 많은 텍스트가 있습니다. muhahahaha +1 작동하기 때문입니다. 진짜 이유는 4.5.1을 먼저 설치 한 다음 IIS를 고정하면 자동으로 올바르게 인식되지 않기 때문이라고 생각합니다. 또는 역순으로 있습니다. 어느 쪽이든. 이것은 나를 위해 일한
hubson의 bropa을

이것이 해결책입니다!
alexroat

4
나는 새로운 2008 R2 서버 (예, 2015 년에)를 구축 중이고 4.5.x를 먼저 설치 한 다음 나중에 IIS를 멈췄습니다. 이것은 많은 장애물 중 첫 번째를 지나쳤습니다.
bkwdesign

.NET 4.5.x 또는 4.6.x를 사용하는 경우 4.0을 언급하고 적용되지 않는다고 생각하는 답변에 속지 마십시오. 이 문제는 IIS 이전의 .NET 설치 순서와 관련이있을 수 있습니다. 내 응용 프로그램이 .NET 4.5.2를 사용하더라도 명령 (내 경우 64 비트 버전)을 실행하면 문제가 해결되었습니다.
Coxy

51

Windows Server 2012 R2의 새로운 빌드에서이 오류가 발생했습니다. IIS 및 .NET 4.5가 설치되었지만 ASP.NET 서버 역할 (제 경우 버전 4.5)은 추가되지 않았습니다. 필요한 ASP.NET 버전이 ASP.NET 4.5처럼 추가 / 설치되었는지 확인하십시오.

ASP.NET 서버 역할


현재 ASP.NET 4.7 (Svr 2016)
bendecko

31

문제를 해결하기 위해 나는

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

그러나 그것은 나를 위해 작동하지 않았습니다. CMD 창에서 관리자 권한으로 다른 명령 줄을 실행해야합니다. 다음은 명령입니다.

dism / online / enable-feature / featurename : IIS-ASPNET45

또는

dism / online / enable-feature / featurename : IIS-ASPNET45 / all

도움이되기를 바랍니다.


이것은 IIS 10이 설치된 Window 10 Preview Build 10074에서도 저를 위해 해결되었습니다.
Shawn McGough

3
dism 명령 %은 처음부터를 제거한 후에 저에게 효과적 이었습니다. 그래서 나는 달렸다 : dism /online /enable-feature /featurename:IIS-ASPNET45 /all.
Schmalls

1
Windows Server 2016에서 작동합니다! 감사합니다!
Adrian Księżarczyk

4

Windows Server 2012 R2의 ASP.Net 4.5 앱에서이 오류가 발생했습니다.

시작 메뉴-> "Windows 기능 켜기 또는 끄기"로 이동합니다. 마법사가 나타났습니다.

서버 역할 옆에있는 클릭

Web Server IIS-> Web Server-> Application Development 아래에있는이 작업을 수행하려면 다음을 확인해야했습니다 (위의 Jeremy Cook의 답변을 기반으로 함).

여기에 이미지 설명 입력

그런 다음 기능 옆을 클릭하고 다음이 선택되어 있는지 확인하십시오.

여기에 이미지 설명 입력

그런 다음 다음을 클릭하고 설치하십시오. 이 시점에서 오류가 사라졌습니다. 행운을 빕니다!


3

IIS 7은 <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>

도움이되기를 바랍니다.


2

나를 위해 PUT또는 DELETEWebAPI를 사용할 때이 오류 메시지가 표시 되었습니다. 또한 제안 된대로 .NET Framework를 다시 등록하려고 시도했지만 아무 소용이 없었습니다.

개별 응용 프로그램 풀에 대해 WebDAV를 비활성화하여이 문제를 해결할 수 있었으며 이로 인해 PUT또는을 사용할 때 '불량 모듈'오류가 중지되었습니다 DELETE.

개별 앱 풀에 대해 WebDAV 비활성화 :

  1. 영향을받는 응용 프로그램 풀을 클릭합니다.
  2. 찾기 WebDAV Authoring Tools목록에서
  3. 그것을 열려면 클릭하십시오
  4. Disable WebDAV오른쪽 상단을 클릭 합니다.

이 링크 는 내가 지침을 찾은 곳이지만 명확하지 않습니다.


1
내 문제는 정확히. WebDav가 활성화 된 상태에서 올리기 및 삭제가 작동하지 않았습니다. 검색 결과를 공유해 주셔서 감사합니다!
ilter

2

IIS Express 대신 IIS가 필요할 때 Windows 10에서이 문제가 발생했습니다. 새 웹 프로젝트가 OP 오류로 실패했습니다. 수정은

Control Panel > Turn Windows Features on or off > Internet Information Services > World Wide Web Services > Application Development Features

진드기 ASP.NET 4.7(내 경우)


0

새 웹 사이트를 배포하거나 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를

Armaan의 솔루션이 제가 문제를 해결하는 데 도움이되었지만 문제가 영구적으로 해결되지는 않았습니다.


0

IIS 8 인 경우 제어판으로 이동하여 Windows 기능을 켜고 끄고 잘못된 "명명 된 파이프 활성화"를 활성화 한 다음 IIS를 다시 시작합니다. IIS 7에서도 동일하게 작동하기를 바랍니다.


-1

역할과 기능을 추가하는 순서가 중요하다는 것을 알게되었습니다. 새로운 시스템에서 "애플리케이션 서버"역할을 활성화하고 거기에서 명시 적으로 .net, 웹 서버 지원을 확인하고 마지막으로 활성화 서비스를 처리합니다. 그러면 "웹 서버"역할도 추가해야한다는 대화 상자가 자동으로 나타납니다.


-1

아래와 같이 .NET Framework를 설치하면 .NET 버전 4.5 에서도 작동 합니다.

%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe -ir

언젠가 aspnet_regiis.exe -i는 작동하지 않으므로 aspnet_regiis.exe -ir위의 경로를 포기하십시오 .

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.