iis 7.0에서 .net Framework 4.0 웹 사이트 실행 문제


119

에서 .NET framework 4.0웹 사이트를 실행하는 데 문제가 있습니다 IIS7.0. 내가 얻은 오류는 다음과 같습니다.

HTTP 오류 404.2- 찾을 수 없음 " 웹 서버 의 ISAPICGI제한 목록 설정으로 인해 요청한 페이지를 제공 할 수 없습니다 ."

Module : IsapiModule , 
Notification : ExecuteRequestHandler, 
Handler : PageHandlerFactory-ISAPI-4.0_32bit , 
Error Code : 0x800704ec

답변:


289

IIS 관리자로 이동하여 서버 이름을 클릭하십시오. 그런 다음 IIS 헤더 아래의 "ISAPI 및 CGI 제한"아이콘을 클릭하십시오. ASP.NET 4.0을 "허용되지 않음"에서 "허용됨"으로 변경합니다.


44
옵션 찾기 위해 서버 이름이 아닌 사이트의 이름을 클릭하십시오를 강조하는
맥가이버

1
실제로 CGI 옵션도 없습니다. Windows 7, 64 비트를 사용하고 있습니다. ssrs를 작동 시키려고합니다.
Steam

남자 당신은 내 시간 :) 감사합니다 :) 저장
안톤 Baksheiev

2
관리자로 IIS를 시작하십시오. :)
Naveed Ahmad

적어도 오늘은 당신이 제가 가장 좋아하는 사람입니다. 이것은 내가 몇 시간 동안 쫓아 온 문제를 해결했습니다. 좋은 대답입니다.
asantaballa

8

ISAPI 및 CGI Restrictions 를 살펴보고 모든 것이 이미 Allowed로 설정되어 있는 경우 ASP.NET v4.0.30319 처리기가 목록에 있는지 확인 합니다. 제 경우에는 그렇지 않았습니다. 이것은 간과하기 쉽습니다.


32 %windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll비트 용과 64 비트 용으로 하나를 추가했습니다 %windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll. 둘 다 같은 이름을 지정할 수 있습니다 ASP.NET v4.0.30319.

확인 확장 경로 실행하도록 허용합니다 .


6
  1. IIS 관리자로 이동하십시오.
  2. 같은 서버 이름을 엽니 다 (PC-Name)\.
  3. 그런 다음 ISAPI 및 CGI 제한을 두 번 클릭하십시오.
  4. 그런 다음 ASP.NET v4.0.30319 (32 비트) 제한 허용을 선택합니다.

6

제 경우에는 문제가 더 심각했습니다. asp.net이 올바르게 등록되지 않은 것으로 나타났습니다.

이 응답은 잘 작동했습니다 .

간단히 명령 프롬프트에서 다음 명령을 실행했습니다.

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

32 비트 시스템을 사용했다면 다음과 같았을 것입니다.

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

3

1 단계 : IIS를 열고 서버 이름을 클릭합니다. 2 단계. "ISAPI 및 CGI 제한"을 두 번 클릭합니다. 3 단계. ASP.NET v4.0.30319를 마우스 오른쪽 단추로 클릭하고 "허용"을 선택합니다.

World Wide Web 게시 서비스를 중지하고 시작한 후

1. 시작> 모든 프로그램> 관리 도구> 서비스로 이동합니다. 2. 서비스 목록에서 World Wide Web Publishing 서비스를 마우스 오른쪽 단추로 클릭 한 다음 중지 (서비스 중지), 시작 (중지 된 후 시작) 또는 다시 시작 (실행 중일 때 서비스 다시 시작)을 클릭합니다. ).

프라 메시


2

Delphi 또는 기타 네이티브 컴파일 된 CGI를 실행중인 경우이 솔루션이 작동합니다.

  1. 다른 지적과 같이 IIS 관리자로 이동하여 서버 이름을 클릭하십시오. 그런 다음 IIS 헤더 아래의 "ISAPI 및 CGI 제한"아이콘을 클릭하십시오.

  2. 모든 것이 허용되면 여전히 작동하지 않습니다. 작업 (오른쪽)에서 "기능 설정 편집"을 클릭하고 "지정되지 않은 CGI 모듈 허용"또는 "지정되지 않은 ISAPI 모듈 허용"을 각각 선택해야합니다.

  3. 확인 클릭


며칠 동안 내 머리를 때리고 클래식 모드에서 작업에 플러그인에 로그인-기업에게 싱글을 얻기 위해이 "편집 기능 설정"을해야했다되었습니다
제이 설리반

1

우리의 경우이 문제에 대한 해결책은 "ISAPI 및 CGI 제한"설정을 포함하지 않았습니다. 오류는 운영 직원이 실수로 서버를 .NET 4.5로 업그레이드 한 후 다시 .NET 4.0으로 다운 그레이드 한 후 발생하기 시작했습니다. 이로 인해 일부 IIS 웹 사이트가 각각의 올바른 응용 프로그램 풀을 잊어 버리고 일부 응용 프로그램 풀이 .NET Framework 4.0에서 2.0으로 전환되었습니다. 이러한 설정을 다시 변경하면 문제가 해결되었습니다.


1

ISAPI 및 CGI 제한 을 살펴보고 모든 것이 이미 허용으로 설정되어 있고 설치된 ASP.NET이 v4.0.30319 인 경우 오른쪽의 " 작업 "패널에서 " 기능 설정 편집 ... "을 클릭 합니다. "및 두 확인란을 모두 선택합니다. 제 경우에는 그렇지 않았습니다.


0

AppPool 관리 파이프 라인 모드를 "통합"에서 "클래식"으로 변경해보십시오.


0

응용 프로그램 유형에 따라 확인해야 할 또 다른 사항은 응용 프로그램 풀의 고급 설정에서 "32 비트 응용 프로그램 사용"이 True로 설정되어 있는지 확인하는 것입니다.

이 문제가 발생했을 때이 스레드의 모든 내용을 확인했지만 모두 이미 올바르게 설정되었으므로 이것이 문제라는 것을 알았습니다.



-1

응용 프로그램 매핑 후 다음 단계를 따르십시오.

IIS 열기 응용 프로그램 풀을 클릭합니다. 웹 사이트를 두 번 클릭합니다. 파이프 라인 모드 관리를 "클래식"으로 변경하고 확인을 클릭합니다.

.Net Framework 버전을 하위 버전으로 변경

그런 다음 확인을 클릭하십시오.

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