아파치에서 제공하는 "tomcat-connector" 를 이용하면
아파치와 톰캣을 연결하여 아파치 포트(80)로 접속하게 되면
톰캣 웹화면이 출력되게끔 해주는 커넥터입니다.
물론, 톰캣 포트를 그냥 8080을 80으로 변경해서 접속해도 가능하나
보안이 문제가 된다고 합니다.
해당 포스팅에는 톰캣을 80으로 적용시 발생되는 문제점은 다루지 않도록 하겠습니다.
그럼 이전 포스팅에 이어서 apache + tomcat 연동법을 공유하도록 하겠습니다.
2014/12/09 - [개발에필요한연동법/리눅스서버구축] - CentOS 6.5 - Tomcat7 다운로드 + 서버 실행 및 방화벽 해제 알아보기
2014/12/10 - [개발에필요한연동법/리눅스서버구축] - CentOS wget을 이용하여 Apache 2.4 다운로드 및 서버 실행 (방화벽해제 포함)
아파치와 톰캣이 설치되어있다는 가정하에 진행하도록 하겠습니다.
tomcat-connector파일을 wget명령어를 이용하여 다운로드 받도록 하겠습니다.
[root@localhost local]# cd /usr/local [root@localhost local]# wget http://apache.mirror.cdnetworks.com/tomcat/tomcat-connectors/jk/tomcat-connectors-1.2.40-src.tar.gz -O connector.tar.gz --2014-12-10 10:57:29-- http://apache.mirror.cdnetworks.com/tomcat/tomcat-connectors/jk/tomcat-connectors-1.2.40-src.tar.gz Resolving apache.mirror.cdnetworks.com... 61.110.198.174 Connecting to apache.mirror.cdnetworks.com|61.110.198.174|:80... connected. HTTP request sent, awaiting response... 200 OK Length: 1526449 (1.5M) [application/x-gzip] Saving to: `connector.tar.gz' 100%[======================================>] 1,526,449 4.39M/s in 0.3s 2014-12-10 10:57:49 (4.39 MB/s) - `connector.tar.gz' saved [1526449/1526449]
다운로드가 완료되었나요?
그럼 압축 해제를 한다음
컴파일 + 인스톨진행 하도록 하겠습니다.
[root@localhost local]# tar -zxvf connector.tar.gz [root@localhost local]# cd tomcat-connectors-1.2.40-src/native/ [root@localhost native]# ./configure --with-apxs=/usr/local/apache/bin/apxs [root@localhost native]# make && make install
커넥터 설치가 완료되었다면 아파치 디렉토리내에 있는 "conf" 디렉토리로 이동합니다.
[root@localhost native]# cd /usr/local/apache/conf/
아파치와 톰캣을 연결해주는 중요 설정부분이므로
각 순서별로 진행하시면 되겠습니다.
[root@localhost conf]# vi workers.properties
workers.tomcat_home="/usr/local/apache-tomcat-7.0.57" workers.java_home="/usr/java/jdk1.7.0_72" ps=/ worker.list=ajp13 worker.ajp13.port=8009 worker.ajp13.host=localhost worker.ajp13.type=ajp13
workers.tomcat_home에 대입되는 경로는
톰캣디렉토리경로를 작성해주면 되겠습니다.
workers.java_home에는 JDK의 디렉토리 설치경로를
작성해주시면 되겠고요.
[root@localhost conf]# vi mod_jk.conf
<IfModule mod_jk.c> JkWorkersFile "/usr/local/apache/conf/workers.properties" JkLogFile "/usr/local/apache-tomcat-7.0.57/logs/mod_jk.log" JkLogLevel info JkAutoAlias "/usr/local/apache-tomcat-7.0.57/webapps" JkMount /* ajp13 JkMount /*.jsp ajp13 JkMount /servlet/* ajp13 JkMount /examples/*.jsp ajp13 JkLogStampFormat "[%a %b %d %H:%M:%S %Y]" JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories JkRequestLogFormat "%w %V %T" </IfModule>
JkWorkersFile에는 workers.properties 파일경로를 작성해줍니다.
JkLogFile의 경우는 톰캣의 로그디렉토리에
"mod_jk.log" 파일명을 선언해줍니다
( mod_jk.log 에 대한 파일명은 필수는 아닐거같군요.)
이어서 conf디렉토리내에 존재하는 httpd.conf파일에
해당 코드들을 추가해주도록 합니다.
[root@localhost conf]# vi httpd.conf
vi 실행 후 하단으로 좀 내리다보면
LoadModule이라고 여러개 선언되어있는 부분이 있는데
이 부분에 맨 끝라인 다음줄에 다음 코드를 추가해주도록 합니다.
LoadModule jk_module modules/mod_jk.so
httpd.conf 파일 맨 끝으로 내린 후,
코드를 추가해주도록 합니다.
include conf/mod_jk.conf
지금까지 했던 부분이 아파치와 톰캣 연동에 마지막 절차입니다.
자 그럼 아파치와 톰캣서버를 각각 실행시켜주도록 해보겠습니다.
[root@localhost local]# cd /usr/local/apache-tomcat-7.0.57/bin/ [root@localhost bin]# ./startup.sh
[root@localhost bin]# cd /usr/local/apache/bin/ [root@localhost bin]# ./apachectl start
기존 80포트 접속시 "it works!" 라는 문구가 출력이 되었으나
톰캣커넥터 연동으로 인하여 하단과 동일한 실행화면이 출력될 것입니다.
by 개발로짜
리눅스환경에서 MySQL 대소문자 구분을 하지 않기위한 설정방법 알아보기 (0) | 2014.12.15 |
---|---|
CentOS 에서 MySQL 설치 및 UTF-8 설정하여 한글깨짐 현상 해결하기 (0) | 2014.12.15 |
CentOS wget을 이용하여 Apache 2.4 다운로드 및 서버 실행 (방화벽해제 포함) (1) | 2014.12.10 |
CentOS 6.5 - Tomcat7 다운로드 + 서버 실행 및 방화벽 해제 알아보기 (0) | 2014.12.09 |
CentOS에 wget을 이용하여 JDK1.7 RPM 다운로드 후 설치하기 (0) | 2014.12.09 |