Windows 서버에서 Tomcat 과 IIS 연동 방법에 대해서 알아보겠습니다. ^^

     

     


    ※ 서버 환경

     - Windows 2008R2

     - IIS7

     - tomcat 7.0

     - isapi_redirector_1.2.32.dll

     - JRE 6

     

     


    1. Tomcat 설치 파일 다운

      - URL : http://jakarta.apache.org/tomcat/index.html

      - Version : apache-tomcat-7.0.25-windows-x86

     


    2. JRE 설치 파일 다운

      - URL : http://www.oracle.com/technetwork/java/javase/downloads/jre-6u31-download-1501637.html

      - Version : jre-6u31-windows-x64



    3. 환경변수 설정

      - CATALINA_HOME : C:\Tomcat

      - JAVA_HOME : C:\Program Files\Java\jre6




    4. IIS7 설치

      - 역할 추가로 전체 설치를 진행합니다

     


    5. JRE설치

      - 상단 URL을 참조하여 JRE 다운로드 후 기본 설치를 진행합니다

     


    6. Tomcat 설치

    다운로드 후 아래의 경로에 Tomcat을 설치합니다

    - 경로 : C:\Tomcat

       - Tomcat 은 압축 해제만으로 설치가 완료됩니다

    - Tomcat 환경설정이 저장된 Tomcat ${CATALINA_HOME}\conf Directory에서 server.xml파일을 연 후 설정 값을 변경합니다.

       

       - <Service name="Catalina"> 태그내의 다음 항목을 확인합니다



      6.1. 포트 설정 : 기본포트 8080을 사용합니다. (확인만)

          

    <Connector port="8080" protocol="HTTP/1.1 connectionTimeout="20000 redirectPort="8443" />

     

      6.2. AJP프로토콜 설정 : IIS와 연동되는 프로토콜이며 ajp13버전을 사용합니다.  (확인만)



    <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />


      6.3. 호스트 설정 

      - Context path에 서블릿 경로를 적어주며docBase에는 컨텐츠 루트 Directory를 추가해 줍니다.

      - Server.xml 파일 내용입니다


    <Host name="localhost"  appBase="webapps unpackWARs="true" autoDeploy="true>       

    <Context path="서블릿 경로docBase="컨텐츠루트경로" reloadable="false" />

    <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" prefix="localhost_access_log." suffix=".txt pattern="%h %l %u %t &quot;%r&quot; %s %b />

    </Host>

     


    7. isapi_redirect.dll 다운로드 및 설정


       7.1 톰캣 컨넥터 다운

    URL : http://archive.apache.org/dist/tomcat/tomcat-connectors/jk/binaries/win64/

    - 64Bit용 “jk-1.2.31”를 다운로드 받아 설치합니다


    7.2 설치 경로

    - $CATALINA_HOME\isapi

     


    8. IIS 가상서버 설정


      - 시작, 실행, inetmgr 입력 후 IIS 관리자로 이동합니다

     

    8.1. IIS 가상디렉터리 추가


      - 아래 그림과 같이 내용을 추가해 줍니다.

      - 별칭 : Jakarta (디렉터리 별칭은 차후 연결설정 파일에서 참조 됩니다)

      - 실제 경로 : C:\Tomcat\isapi (Connector Module 경로)


      8.2. 처리기 Mapping 작업

      - 방금 생성한 가상디렉터리를 선택하고 처리기 매핑을 더블 클릭합니다



      - 우측의 기능 사용 권한 편집을 클릭합니다.


      - 팝업 창의 실행’ 권한을 추가하여 줍니다


      8.3. ISAPI  CGI 제한

      - 좌측의 Tree 중 최 상단을 선택 후 ISAPI  CGI 제한을 더블 클릭합니다.



      - 우측의 추가 버튼을 눌러줍니다.


      - 아래 내용을 기입해 줍니다.

      - ISAPI 또는 CGI 경로 : C:\Tomcat\isapi\isapi_redirect.dll

      - 설명 : Tomcat

      - 확장 경로 실행 허용 체크


      8.4. ISAPI 필터 설정

      - 웹 사이트 선택 후 ISAPI 필터를 더블 클릭합니다.


    - 우측의 추가 버튼을 클릭합니다.


      - 필터 이름 : Tomcat

      - 실행 파일 : C:\Tomcat\isapi\isapi_redirect.dll   입력 후 확인

     


    9. Connector  Log 파일 설정


      9.1. isapi_redirect.properties 파일 생성 및 내용 추가

      - 경로 : C:\Tomcat\isapi 폴더에 파일을 생성합니다

     

    # ISAPI redirector path. /Jakarta  IIS 에서 등록하는 가상디렉터리 이름입니다.

    extension_uri=/jakarta/isapi_redirect.dll

    # 로그파일 Full path. 본인 설치폴더에 맞게 변경이 필요합니다.

    log_file=C:\Tomcat\logs\isapi_redirect.log

    # 로그레벨. 연동 설치 중에는 debug 레벨, 연동이 완료 되면 error 레벨 정도로 변경 해 줍니다. (debug, info, warn, error, trace)

    log_level=info

    # 워커파일과 워커마운트 파일 Full Path입니다. 본인의 설치 폴더에 맞게 변경이 필요합니다.

    worker_file=C:\Tomcat\conf\workers.properties

    worker_mount_file=C:\Tomcat\conf\uriworkermap.properties  

     

      9.2. conf/workers.properties 파일 생성 및 내용 추가

     - 경로 : C:\Tomcat\conf 폴더에 파일을 생성합니다

     

    #worker list 파일 생성 및 내용 추가

    worker.list=mp

    worker.mp.host=localhost

    worker.mp.port=8009

    worker.mp.type=ajp13

     

      9.3. conf/uriworkermap.properties 파일 생성 및 내용 추가

    - 경로 : C:\Tomcat\conf 폴더에 파일을 생성합니다


    #uriworkermap.properties - IIS

    #

    #This file provides sample mappings for example wlb

    #worker defined in workermap.properties.minimal

    #The general syntax for this file is:

    #[URL]=[Worker name]

    /*=mp

    #Optionally filter out all .jpeg files inside that context

    #For no mapping the url has to start with exclamation (!)

    #!/servlets-examples/*.jpeg=wlb

    #

    #Mount jkstatus to /jkmanager

    #For production servers you will need to

    #Secure the access to the /jkmanager url

    #

    #/jkmanager=jkstatus

     


    10. IIS / Tomcat 재 시작


      - 모든 설정을 적용하기 위해 IIS  Tomcat 을 재 시작합니다.

      - Tomcat 시작/중지 실행 파일 경로 : C:\Tomcat\bin

      - Tomcat 시작 : startup.bat

      - Tomcat 중지 : shutdown.bat



      - Tomcat 이 구동 된 화면



    11. 연동 확인

    - http://localhost 로 접속 시, 고양이 화면이 잘 나오면 연동 완료!




    따라오시느라 수고 많으셨습니다 ^^



    Posted by sybd
    • CK
      2012.11.01 11:57

      안녕하세요.
      작성해주신 글을 따라 열심히 따라하는 초보자입니다.
      현재 2008 R2/IIS7/JDK6 을 사용하여 연동을 하려고 합니다.
      6.3에서 나와 있는 서블릿경로 및 컨텐트 루트 경로를 적는 부분이 있는데 어떤 서블릿 경로 및 루트경로를 적어주어야 하는지요? 제가 완전 초급자인지라. 감을 못잡고 있습니다. 또한 다른 글을 찾아보니 isapi_redirect-1.2.9.exe 를 설치하라고 하는데 님께서는 이 부분 설치 부분이 없어서 궁금합니다. 제가 참조한 곳은 http://blog.naver.com/PostView.nhn?blogId=romanicteach&logNo=70121164163 입니다.

      감사합니다.

      • BlogIcon sybd
        2012.11.01 13:01 신고

        안녕하세요
        6.3 항목에서 서블릿 경로는 특이한 경우가 아니면 공란으로 두셔도 됩니다
        컨텐츠 루트의 경우에는 실질적인 웹 소스가 포함 되어 있는 폴더를 지정 해 주시면 됩니다. 이를테면 index.jsp 와 같은 인덱스 페이지가 위치한 곳이 될 수 있겠네요
        그리고 isapi_redirect 파일은 exe 로도 설치가 가능 하지만 dll 파일만 특정 폴더에 복사 해 놓으시고 위 과정을 수행하셔도 무방 합니다.
        또 문의 사항이 있으시면 댓글 남겨주세요

    • rpg32
      2012.11.20 02:44

      안녕하세요, 글잘 읽었습니다. 우선 이러한 정보를 잘 정리해주셔서 감사드립니다.
      위에 사항대로 똑같이 따라했는데 localhost를 쳤을때 톰캣으로 넘어가지를 않는것 같습니다....
      톰캣은 일단 localhost:8080 으로 들어가면 문제가없으며 IIS도 마찮가지 입니다...
      그런데 지금 제가 ASP를 쓸일이 있어서 서버에서 돌리고있는데 JSP를 연동시키기 위해서는 ASP를 제외하고 연동을 해야하나요?

    • BlogIcon prada
      2013.04.28 02:35

      서 표현된 부끄러움의

    • Ben
      2013.10.15 05:22

      9.1. isapi_redirect 파일도 확장자가 properties인것이 안적혀있어서 조금 헷갈릴수 있겠네요
      파일명이 isapi_redirect.properties 이어야 하네요.

    • Sensate1024
      2013.12.19 13:59

      여기와서 님 덕분에 성공했네요.
      고맙습니다.