본문 바로가기
Apache,Tomcat

Apache Tomcat 연동하기 - 2.연동하는 방법(mod_jk 이용)

by nomore7 2013. 11. 7.


아파치 웹서버와 톰캣 JSP/서블릿 컨테이너를 직접 연동하기 !


 

앞서서 둘을 연동하는 이유에 대해 알아봤습니다.

 

 


한마디로 정리하면 톰캣만으로도 JSP 파일을 처리할 수 있는 웹서버가 될 수 있지만,


다양한 아파치의 기능과 효율적인 처리를 위해  아파치를 연동한다고 할 수 있습니다.

 


그렇다면 mod_jk를 이용하여 연동해보겠습니다.

 

사실 둘이 잘 설치되어있다면, 연동하는것은 간단합니다.

 

일부글에서는 어디를 어떻게 수정한다. 무슨파일을 만든다. 하고 너무 복사하면서 따라하게 되는것 같다는 생각이 드네요.


그래서 부족하지만 그보다는 더 자세하게 알고 연동해야하는것이 아닐까 생각합니다.

 

본격적으로 연동을 하면,

 

환경

OS : CentOS release 5.5 (Final)



일단 아파치와 톰캣은 설치되어 있다고 가정합니다.


1. mod_jk를 설치.


둘을 연동하려면 연동할 매개가 필요합니다. mod_jk가 그 매개체입니다.

mod_jk는 apache foundation 에서 구할 수 있습니다.(자세한 설치 자체의 과정은 다시 정리하겠습니다. 굉장히 길게 되겠죠 아마..설치중에 뭐가 자꾸 업다고 하면 받고 설치하고..ㅋㅋ)


임의로 아파치 경로 = /opt/ext/apache 라고 해둘게요. 햇갈려서


mod_jk를 받아 아파치의 modules에 추가됨을 확인해야 정상적으로 완료된 것입니다.


설치는 다음과 같습니다.

modjk tar파일을 압축을 푼 후,


native directory에서 ./configure --with-apxs=아파치경로/bin/apxs



ll /opt/ext/apache/modules/mod_jk.so     #해당 파일이 존재하는지 확인.

 



2.Httpd.conf 수정.


모듈을 아파치에 설정했으므로, 설정도 아파치를 고쳐야합니다.

아파치가 설치된 경로에 conf 디렉토리안의 httpd.conf 를 열어 수정합니다.

맨아래에

#Httpd.conf파일 

#..

#..

LoadModule jk_module modules/mod_jk.so    #modules디렉토리의 mod_jk.so 모듈을 로드

JkWorkersFile "conf/workers.properties"

JkLogFile "logs/mod_jk.log"                        #log를 어디에 남길지 지정합니다.

JkLogLevel info

JkLogStampFormat "[%a %b %d %H:%M:%S %Y] " #로그를 어떠한 형태로 남길지 지정합니다.

JkRequestLogFormat "%w %V %T"

 

JkMount /*.do worker1                               #해당 확장자를 처리한 worker를 지정합니다

JkMount /*.jsp worker1                               #해당 확장자를 처리한 worker를 지정합니다

JkMount /servlet/* worker1                          #해당 확장자를 처리한 worker를 지정합니다


와 같이 추가합니다.

3. worker 설정파일

이제 마지막으로 worker설정파일을 생성하면 끝입니다.

conf 디렉토리에 위에서 경로로 설정한 파일을 생성하고 아래와 같이 저장합니다.(conf/workers.properties)

 









#
#httpd.conf 에서 지정한 worker1 에 대한 설정입니다.

worker.list=worker1

 

worker.worker1.type=ajp13        #프로토콜

worker.worker1.host=localhost    #호스트

worker.worker1.port=8009        #포트

 


 


 

이로서 연동과정을 마치겠습니다.

 

간략히 정리하면 mod_jk 설치, httpd.conf 수정 worker.properties 생성

으로 간단히 구성가능합니다.

 


리눅스에서 아파치를 설치하거나, 톰캣을 설치 연동 하는것에 대해서는 다음에 자세히 해볼 계획입니다.

 

 

아 마지막으로 정상적으로 작동했는지 확인하려면

apache tomcat을 재시작하고, 


http://localhost/index.jsp 가 동작해야합니다.

 

왜냐하면

http://localhost:80 가 나와야 아파치가 정상적으로 설치 , 실행되는 것이고,

http://localhost:8080 이 나와야 톰캣이 정상적으로 설치 , 실행되는 것입니다.

 


이때 연동이 되었다면 http://localhost  의 80 포트로 jsp를 보냈을때 톰캣화면이 나와야 하므로 이처럼 테스트해야 합니다.

만약 404페이지 오류가 난다면 다시한번 확인을 해봐야 합니다.

mod.jk에 대해 설정이 잘 되어있다면, 위에서 설정한 mod_jk의 로그나 아파치의 로그들을 본다면

문제를 발견할 수 있을 것입니다.

 

이상입니다~