2012-11-09 3 views
4

으로 호출하는 중 오류가 발생했습니다. IIS 7에서 Apache ISAPI 리디렉터를 Tomcat으로 사용하려고하지만 32 비트 W2K8 SP2 Standard Edition에서만 오류가 발생합니다.Apache에서 GetFilterVersion을 Tomcat 리디렉터 ISAPI 필터 - 32 비트 W2K8 SP2 표준

64 비트 W2K8 R2와 32 비트 W2K3에서 잘 작동합니다.

올바른 32 비트 라이브러리 (릴리스 1.2.32 또는 1.2.37)를 가지고 있는지 확인했습니다. 실제로 동일한 라이브러리는 32 비트 W2K3에서 작동합니다. 필터가 사용 가능하고 허용되며 라이브러리 폴더 및 레지스트리 항목에 대한 권한을가집니다.

라이브러리의 이름을 바꾸면 "LoadLibraryEx를 ISAPI 필터에서 호출하는 중 ... 실패했습니다"오류 코드 0x8007007e가 발생합니다. 나는 허가 문제처럼 보이지 않습니다.

정확한 오류 텍스트

는 "ISAPI 필터에 GetFilterVersion 호출"입니다 ... \ isapi_redirector_1.0.dll는 "실패"- 오류 코드 0x80070002가

오류 로그를 보여줍니다.는 HTTP 필터 DLL ... \ isapi_redirector_1.0합니다. DLL을로드하지 못했습니다. 원본 = IIS-W3SVC-WP. 오류 코드는 02 00 00 00

입니다. 모든 조언을 제공해 드리겠습니다.

+0

해결책을 알아 냈습니까? –

답변

0

여러 가지 이유가있을 수 있습니다. 가장 일반적인 몇 가지 :

  1. 일부 종속성은 32 비트 DLL에서 해결되지 않습니다. Dependency walker를 사용하여이 DLL을 열고 오류가 있는지 확인하십시오 (경고는 건너 뜁니다). 대부분의 경우 모든 종속 라이브러리가 존재하므로 특정 버전의 VC 재배포 가능 파일이 없기 때문에 LoadLibraryEx 오류가 발생할 수 있습니다 (DLL이 VS 2010에서 작성된 경우 VC 2010 재배포 가능 파일이 필요함).
  2. 이 DLL에 대한 읽기 권한은 웹 사이트가 실행되는 응용 프로그램 풀에서 사용할 수 없습니다. 웹 사이트의 속성을 확인하여 사용자를 확인하고이 사용자에게 DLL에 대한 권한이 있는지 확인하십시오.
관련 문제