HTTP 오류 500.0 - IIS 웹 페이지를 열 때 내부 서버 오류

이 문서는 IIS에서 호스팅되는 웹 사이트를 방문할 때 발생하는 HTTP 500.0 오류를 해결하는 데 도움이 됩니다.

원본 제품 버전: 인터넷 정보 서비스
원본 KB 번호: 942031

요약

이 문서에서는 IIS(인터넷 정보 서비스) 웹 애플리케이션에서 500.0 오류가 발생하는 경우의 HResult 코드에 대해 설명합니다. 이 문서는 웹 사이트 관리자를 위한 것입니다. 이러한 오류에는 많은 원인이 있으며 다양한 시스템 구성에 영향을 줄 수 있습니다. 이 문서에 설명된 절차는 서버의 관리자 그룹 구성원이 수행해야 합니다.

이러한 오류를 경험하는 최종 사용자는 웹 사이트 관리자에게 문제를 알려야 합니다.

HResult 코드

HTTP 오류 500 메시지는 오류가 반환될 때 웹 사이트를 호스팅하는 웹 서버에서 문제가 발생했음을 나타냅니다.

다음은 이러한 오류의 세부 정보입니다.

HRESULT 코드 0x80070032

오류 메시지:

"응용 프로그램 이름" 응용 프로그램의 서버 오류
HTTP 오류 500.0 - 내부 서버 오류
HRESULT: 0x80070032
SF_NOTIFY_READ_RAW_DATA 알림에 등록하려고 시도한 HRESULT ISAPI 필터 drive:\FilePath\ISAPI_FLT.dll에 대한 설명입니다.

원인

이 문제가 발생하는 이유는 IIS 7.0이 SF_NOTIFY_READ_RAW_DATA 알림에 등록하는 ISAPI(인터넷 서버 API) 필터를 지원하지 않기 때문입니다.

해결 방법

IIS에서 SF_NOTIFY_READ_RAW_DATA 알림에 등록하는 ISAPI 필터를 사용하지 마세요.

HRESULT 코드 0x80070035

오류 메시지:

"응용 프로그램 이름" 응용 프로그램의 서버 오류
HTTP 오류 500.0 - 내부 서버 오류
HRESULT: 0x80070035
HRESULT에 대한 설명 내부 서버 오류가 발생하여 페이지를 표시할 수 없습니다.

원인

이 문제가 발생하는 이유는 IIS 7.0을 실행하는 서버가 요청된 위치의 구성된 루트 디렉터리에 액세스할 수 없기 때문입니다.

해결 방법

IIS 7.0을 실행하는 서버가 요청된 위치의 구성된 루트 디렉터리에 액세스할 수 있는지 확인합니다.

HRESULT 코드 0x8007000d

오류 메시지:

"응용 프로그램 이름" 응용 프로그램의 서버 오류
HTTP 오류 500.0 - 내부 서버 오류
HRESULT: 0x8007000d
HRESULT 처리기 "ASPClassic"에 대한 설명에는 모듈 목록에 잘못된 모듈 "IsapiModule"이 있습니다.

원인

이 문제가 발생하는 이유는 ISAPIModule 모듈이 웹 사이트의 모듈 목록에서 누락되었기 때문입니다. ISAPIModule 모듈은 이 위치에 drive:\Windows\System32\inetsrv\isapi.dll있습니다.

해결 방법

웹 사이트의 모듈 목록에 ISAPIModule 모듈을 추가합니다. 이렇게 하려면 다음과 같이 하십시오.

  1. 시작, 실행을 차례로 클릭하고 inetmgr.exe를 입력한 다음 확인을 클릭합니다.
  2. IIS 관리자에서 서버 이름을> 확장하고<웹 사이트를 확장한 다음 수정할 웹 사이트를 클릭합니다.
  3. 기능 보기에서 모듈을 두 번 클릭합니다.
  4. 작업 창에서 네이티브 모듈 추가를 클릭합니다.
  5. 네이티브 모듈 추가 대화 상자에서 IsapiModule 확인란을 클릭하여 선택한 다음 확인을 클릭합니다.

HResult 코드 0x800700c1

오류 메시지:

"응용 프로그램 이름" 응용 프로그램의 서버 오류
HTTP 오류 500.0 - 내부 서버 오류
HRESULT: 0x800700c1
HRESULT에 대한 설명 내부 서버 오류가 발생하여 페이지를 표시할 수 없습니다.

원인

이 문제는 스크립트 매핑이 유효하지 않기 때문에 발생합니다.

해결 방법

스크립트 매핑이 요청을 처리할 수 있는 ISAPI.dll 파일을 가리키는지 확인합니다. 이렇게 하려면 다음과 같이 하십시오.

  1. 시작, 실행을 차례로 클릭하고 inetmgr.exe를 입력한 다음 확인을 클릭합니다.
  2. IIS 관리자에서 서버 이름을> 확장하고<웹 사이트를 확장한 다음 수정할 웹 사이트를 클릭합니다.
  3. 기능 보기에서 처리기 매핑을 두 번 클릭합니다.
  4. 스크립트 매핑이 올바른 ISAPI.dll 파일을 가리키는지 확인합니다. 예를 들어 .asp 파일은 %windir%\system32\inetsrv\asp.dll 파일에 매핑되어야 합니다.

HResult 코드 0x80070005

오류 메시지:

"응용 프로그램 이름" 응용 프로그램의 서버 오류
HTTP 오류 500.0 - 내부 서버 오류
HRESULT: 0x80070005
ISAPI 필터 "path_of_isapi"의 HRESULT LoadLibraryEx 실패에 대한 설명.

원인

이 문제는 유효하지 않은 ISAPI 필터가 전역 수준 또는 웹 사이트 수준에서 로드되기 때문에 발생합니다.

해결 방법

유효하지 않은 ISAPI 필터를 제거합니다. 이렇게 하려면 다음과 같이 하십시오.

  1. 시작, 실행을 차례로 클릭하고 inetmgr.exe를 입력한 다음 확인을 클릭합니다.
  2. IIS 관리자에서 서버 이름을> 확장하고<웹 사이트를 확장한 다음 수정할 웹 사이트를 클릭합니다.
  3. 기능 보기에서 ISAPI 필터를 두 번 클릭합니다.
  4. 제거할 ISAPI 필터를 마우스 오른쪽 단추로 클릭한 다음 삭제를 클릭합니다.

HResult 코드 0x8007007f

HResult 0x8007007f에는 두 가지 가능성이 있습니다.

  • 오류 메시지 1:

    "응용 프로그램 이름" 응용 프로그램의 서버 오류
    HTTP 오류 500.0 - 내부 서버 오류
    HRESULT: 0x8007007f
    ISAPI 필터 "path_of_isapi"에서 HRESULT 호출 GetProcAddress 실패에 대한 설명.

    원인

    이 문제는 유효하지 않은 ISAPI 필터가 전역 수준 또는 웹 사이트 수준에서 로드되기 때문에 발생합니다.

    해결 방법

    문제를 해결하려면 유효하지 않은 ISAPI 필터를 제거합니다. 이렇게 하려면 다음과 같이 하십시오.

    1. 시작, 실행을 차례로 클릭하고 inetmgr.exe를 입력한 다음 확인을 클릭합니다.
    2. IIS 관리자에서 서버 이름을> 확장하고<웹 사이트를 확장한 다음 수정할 웹 사이트를 클릭합니다.
    3. 기능 보기에서 ISAPI 필터를 두 번 클릭합니다.
    4. 제거할 ISAPI 필터를 마우스 오른쪽 단추로 클릭한 다음 삭제를 클릭합니다.
  • 오류 메시지 2:

    "응용 프로그램 이름" 응용 프로그램의 서버 오류
    HTTP 오류 500.0 - 내부 서버 오류
    HRESULT: 0x8007007f
    HRESULT에 대한 설명 찾고 있는 리소스에 문제가 있어 표시할 수 없습니다.

    원인

    이 문제가 발생하는 이유는 요청된 리소스에 대한 처리기 매핑이 요청을 처리할 수 없는 .dll 파일을 가리키기 때문입니다.

    해결 방법

    문제를 해결하려면 요청된 리소스에 대한 처리기 매핑을 편집하여 요청을 처리할 수 있는 .dll 파일을 가리키도록 합니다. 이렇게 하려면 다음과 같이 하십시오.

    1. 시작, 실행을 차례로 클릭하고 inetmgr.exe를 입력한 다음 확인을 클릭합니다.
    2. IIS 관리자에서 서버 이름을> 확장하고<웹 사이트를 확장한 다음 수정할 웹 사이트를 클릭합니다.
    3. 기능 보기에서 처리기 매핑을 두 번 클릭합니다.
    4. 편집하려는 스크립트 매핑을 마우스 오른쪽 단추로 클릭한 다음 편집을 클릭합니다.
    5. 스크립트 맵 편집 대화 상자의 실행 파일 상자에 적절한 실행 파일을 입력한 다음 확인을 클릭합니다.
      예를 들어 .asp 파일은 %windir%\system32\inetsrv\asp.dll 파일에 매핑되어야 합니다.

추가 정보

웹 애플리케이션 코드에서 throw된 예외의 경우 예외 유형, 예외 메시지 및 예외 호출 스택에 대해 애플리케이션 이벤트 로그 또는 사용자 고유의 애플리케이션 로그를 검사. 추가 디버깅이 필요한 경우 DebugDiag 최신 버전을 사용하여 첫 번째 예외 덤프를 캡처합니다.