하늘높이의 프로그래밍 이야기

항목

HTTP 모듈(HttpModule)

HTTP처리기(HttpHandler, HttpAsyncHandler(비동기))

요청 반응

모든 요청을 프로세싱

특정 확장자(*.ext)에 대해서 프로세싱

사용가능개체

인증,캐쉬,콘텍스트,권한,프로세스,매핑등 모든 작업을 관리

Request, Response, Session, Server 개체 사용가능

이벤트

접근->보안->캐쉬->실행(핸들로)->로깅 등 19가지 이벤트를 후킹

모듈의 HandlerExecute 이벤트에 ProcessRequest 실행

사례

보안,

특정확장자로 제공하는 RSS 피드

통계, 로깅(중앙 집중식 처리 가능)

전용 콘텐츠의 내용을 실시간으로 변경하는 특정 처리기 작성 가능

모니터링 및 제어,

해석기

전역 문자열 치환 등 프로그램을 개발(페이지 파싱후 변경)

  

설정

IIS 관리 메뉴-> 모듈

IIS 관리 메뉴-> 처리기 매핑

설치 경로

/BIN(DLL)

/BIN(DLL)

/APP_CODE(SOURCE CODE)

/APP_CODE(SOURCE CODE)

IIS 6.0 유사기능

ISAPI FILTER(네이티브 코드로만 작성가능)

ISAPI EXTENTION(네이티브 코드로만 작성가능)

사용 예

인증, 압축 모듈 등

.aspx 파일을 해석하는 ASP.NET 페이지 처리기

호출 개체

리퀘스트 발생시 Init 함수 호출

IHttpHandlerFactory
(인스턴스의 수 제한 가능 , DB POOL 작성시 유효)