ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • windows 10에 설치한 Apache와 Tomcat 연동
    프로그래밍 2020. 3. 30. 12:46

    톰캣 8.5 버전을 사용하겠습니다. 톰캣 설치 위치는 C:/project 아래 입니다.

     

    구동하려는 프로젝트 WAR 파일은 톰캣 폴더 내 webapps 폴더 안에 넣어줍니다. 구동시키는 프로젝트가 한 개라면, webapps 안에 있던 기존의 파일이나 폴더를 전부 지우고 WAR 파일을 넣어주시면 되겠습니다.

     

     

    프로젝트 빌드 파일의 위치는 이렇습니다. ( 톰캣 설치위치/webapps/프로젝트.WAR )

     

     

    톰캣 설치위치/webapps/프로젝트.WAR

     

     

    톰캣 설치 위치/conf/server.xml을 수정해줘야합니다.

     

    AJP 1.3으로 검색해서 커넥터 태그를 발견하면, 주석을 풀어주세요. 그 후 아래와 같이 작성해줍니다. address,

    secretRequired 속성을 꼭 수정해줘야 합니다.

     

     

    커넥터 태그 (AJP/1.3) 주석 해제 / address, secretRequired 확인 필수

     

     

    address 속성은 기본적으로 ":::1" 값이 적혀있을텐데, 이렇게 되어있으면 아파치와 연결이 제대로 되지 않습니다.

     

    secretRequired 속성이 적혀있지 않으면, 기본값인 true로 설정되어 있다고 판단하는 것 같습니다. 프로젝트가 제대로 구동죄지 않으니 false로 바꿔줍시다.

     

    이 부분이 살아있으면 8080포트를 통해 톰캣으로 바로 접속할 수 있습니다. 살아있어도 상관은 없지만 주석처리해 주는게 더 좋을듯 합니다.

     

     

     

     

    mod_jk 설치

    https://www.apachelounge.com/download/

     

    Apache VS16 binaries and modules download

     

    www.apachelounge.com

     

    mod_jk 모듈은 아파치와 톰캣 간 연동에 필요한 모듈입니다.

     

     

    Apache를 설치했던 곳에서 스크롤을 조금 내리다 보면 아래와 같이 mod_jk를 다운받을 수 있는 링크를 볼 수 있습니다. 자신의 환경에 맞는 파일을 잘 받아주세요.

     

    mod_jk 다운로드

     

     

     

    파일을 다운받아 압축을 풀면 mod_jk.so 파일이 있는 것을 볼 수 있습니다. 해당 파일을 복사해서

    아파치 설치 경로/modules 폴더에 갖다 놓습니다.

     

     

    아파치 설치경로/modules/mod_jk.so

     

     

     

    Apache/conf 폴더에 workers.properties 파일을 생성하고 아래 내용을 작성한 후 저장합니다.

    worker.list=worker1
    worker.worker1.type=ajp13
    worker.worker1.host=localhost
    worker.worker1.port=8009

     

     

    worker.properteis 내용 이미지

     

     

    자세히 알 수는 없어도 여기서 worker1 은 방금 설치한 톰캣을 지칭하는 말이라고 유추할 수 있습니다. 해당 톰캣에 연결하는 프로토콜이 ajp13이고, 주소는 localhost( 127.0.0.1도 가능), 포트는 8009입니다. server.xml의 내용과 동일합니다.

     

     

    아파치 설치경로/conf/httpd.conf 최 하단부에 아래 내용을 추가해줍니다.

    #mod_jk 모듈 설정
    LoadModule jk_module modules/mod_jk.so
    JkworkersFile conf/workers.properties
    JkMount /* worker1
    JkLogFile logs/mod_jk.log
    JkLogLevel info
    JkLogStampFormat "[%a %b %d %H:%M:%S %Y] "
    JkRequestLogFormat "%w %V %T"

     

     

    아파치 설치 경로/conf/extra/httpd-vhosts.conf 파일에 아래 문구를 추가합니다.

    <VirtualHost *:8009>
        ServerAdmin admin
        DocumentRoot "C:/project/tools/apache-tomcat-8.5.51/webapps/프로젝트명"
        ErrorLog "logs/example-project-error.log"
        CustomLog "logs/example-project-access.log"
    </VirtualHost>
    

     

    복붙을 하더라도 포트 번호와 프로젝트의 경로를 잘 확인해서 작성해주세요.

     

     

    모든 절차가 완료되면, 아파치와 톰캣을 구동시키면 되겠습니다. 첫 번째로 톰캣을 구동시켜서 프로젝트가 제대로 빌드&런이 되는지 확인합니다. 그리고 아파치가 Listen 하고 있는 포트로 접속했을 때, 톰캣에 올라가있는 프로젝트가 브라우저에 뜨는지 확인해봅시다.

    '프로그래밍' 카테고리의 다른 글

    Jenkins (젠킨스) Windows 10에 설치하기  (0) 2020.03.31
    Windows 10에 Apache 설치  (0) 2020.03.26

    댓글

Designed by Tistory.