준호씨의 블로그

OSX - tomcat과 httpd를 같은 포트로. mod_jk 설정하기 2. mod_jk httpd에 설정하기 본문

개발이야기

OSX - tomcat과 httpd를 같은 포트로. mod_jk 설정하기 2. mod_jk httpd에 설정하기

준호씨 2020. 3. 27. 23:31
반응형

오늘도 톰캣이다

지난 글에서 mod_jk.so를 빌드하는 방법을 알아보았습니다.

 

OSX - tomcat과 httpd를 같은 포트로. mod_jk 설정하기 1. mod_jk 빌드하기

레거시 시스템을 다루다 보면 tomcat과 httpd를 같은 포트에서 서비스하는 것을 종종 볼 수 있습니다. 요즘은 이런 식으로 구성하는 걸 보기 어려워진 거 같네요. 이번 글에서는 mod_jk를 이용해서 tomcat과 http..

junho85.pe.kr

이번 글에서는 지난번에 빌드한 mod_jk.so를 httpd에 설정해서 tomcat과 연동해 보겠습니다.

httpd의 기본 설정 파일은 httpd.conf입니다. httpd.conf에 mod_jk 관련 설정을 바로 넣을 수도 있지만 설정 파일을 분리해보겠습니다. 제가 설치한 httpd의 설정 파일은 /usr/local/etc/httpd/httpd.conf 에 있습니다.

mod_jk 디렉터리를 만들고 mod_jk.conf 파일을 생성합니다. mod_jk.conf의 위치는 /usr/local/etc/httpd/mod_jk/mod_jk.conf 가 되겠습니다.

LoadModule jk_module /usr/local/lib/httpd/modules/mod_jk.so

JkLogLevel error
JkWorkersFile /usr/local/etc/httpd/mod_jk/workers.properties
JkLogFile     /usr/local/var/log/httpd/mod_jk.log
JkShmFile     /usr/local/var/log/httpd/jk-runtime-status

LoadModule 설정으로 mod_jk.so를 로드합니다. mod_jk는 worker 설정을 불러와서 사용하게 되는데요. /usr/local/etc/httpd/mod_jk에 workers.properties라는 파일을 만들고 내용을 아래처럼 작성합니다.

worker.jkstatus.type=status

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

tomcat과 연동되는 설정들입니다. ajp13 버전을 사용하고 포트는 8009입니다. 8009는 tomcat 기본 설정 내용에 아래처럼 생긴 설정을 볼 수 있을 건데요.

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

이 설정과 맞춰주면 됩니다. 이 설정을 통해 httpd로 요청이 들어오면 mod_jk를 통해 tomcat으로 요청을 넘기게 된다고 보면 되겠습니다. 만약 포트를 바꾸고 싶다면 mod_jk의 worker의 설정과 tomcat의 server.xml 설정을 똑같이 맞춰서 바꿔주면 됩니다.

이제 httpd와 tomcat 연동 설정을 마쳤습니다.

레거시 프로젝트 세팅을 하면서 이러한 설정 방식들에 대해서 알아보면서 정리해 보았는데요. 다음에는 servlet 프로젝트를 처음부터 만들어 보면서 개선 방안을 모색해 볼까 합니다.

반응형
Comments