Apache Web Server 2.4 와 Tomcat 8 연동하기
1) 개요
정적 페이지는 Apache Web Server에서 처리하고, 동적 페이지는 Tomcat에서 처리하기 위해 설정한 내용을 정리하기 위해 작성되었습니다.
2) 설치 방법
- 연동 커넥터 다운로드
wget http://apache.tt.co.kr/tomcat/tomcat-connectors/jk/tomcat-connectors-1.2.41-src.tar.gz
- 의존 패키지 설치하기
sudo yum install autoconf libtool
- 연동 커넥터 설치파일 압축 해제
tar -zxvf tomcat-connectors-1.2.41-src.tar.gz
- 연동 커넥터 설치하기
cd [설치파일 압축 해제한 디렉토리]/native/ sudo ./buildconf.sh sudo ./configure --prefix=[Apache 설치된 디렉토리] --with-apxs=/usr/bin/apxs sudo make sudo make install
- 연동 커넥터 생성 확인 및 실행권한 부여
ls [Apache 설치된 디렉토리]modules/mod_jk.so sudo chmod +x [Apache 설치된 디렉토리]/modules/mod_jk.so
3) 설정 방법
mod_jk 모듈 관련 설정
1-1. 톰캣과 연동 정보 설정vi [Apache 설치된 디렉토리]/conf/workers.properties
workers.properties
에 입력할 내용workers.tomcat_home="[Tomcat이 설치된 디렉토리]" workers.java_home="[JDK가 설치된 디렉토리]" ps=/ worker.list=ajp13 worker.ajp13.port=8009 worker.ajp13.host=localhost worker.ajp13.type=ajp13
1-2. 정적 페이지 패턴 및 로그 관련 설정
vi [Apache 설치된 디렉토리]/conf/mod_jk.conf
mod_jk.conf
에 입력할 내용<IfModule mod_jk.c> JkWorkersFile "[Apache 설치된 디렉토리]/conf/workers.properties" //연동 정보 파일 JkMount /*.jsp ajp13 //정적 페이지 처리할 패턴 설정 JkLogFile "[Tomcat이 설치된 디렉토리]/logs/mod_jk.log" //로그 설정 JkLogLevel info JkLogStampFormat "[%a %b %d %H:%M:%S %Y]" JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories JkRequestLogFormat "%w %V %T" JkAutoAlias "[Tomcat이 설치된 디렉토리]/webapps" </IfModule>
- 서블릿에서 특정 정적 패턴을 제외한 나머지 WAS가 처리하도록 설정 하는 팁
SetEnvIf Request_URI "/*.js$" no-jk JkMount /* ajp13
- 모든 유형은 톰캣에서 처리하지만 .js파일은 아파치에서 처리하겠다는 의미. Request_URI는 정규표현식을 이용해서 패턴을 정하는데 *.js까지만 하면 jsp파일도 아파치에서 처리해서 소스가 노출되는 문제가 있어 문자의 끝을 의미하는 $를 넣어주는것이 안전하다.
- 서블릿에서 특정 정적 패턴을 제외한 나머지 WAS가 처리하도록 설정 하는 팁
Apache Web Server 설정
vi [Apache 설치된 디렉토리]/conf/httpd.conf
httpd.conf
파일에 수정할 부분LoadModule jk_module modules/mod_jk.so //추가 include conf/mod_jk.conf //추가 DocumentRoot "[Tomcat이 설치된 디렉토리]/webapps/ROOT" <Directory "[Tomcat이 설치된 디렉토리]/webapps/ROOT"> //ROOT 상위 디렉토리 접근 필요시 ROOT 제외 Options -Indexes FollowSymLinks를 Options //Indexes앞에 - 붙이기.
- Options Indexes FollowSymLinks를 Options
-
Indexes FollowSymLinks로 변경해야 WelcomePage 없을 때 indeox of 페이지를 못 보게 막을 수 있다. - -로 붙였는데 오류가 나면
Indexes
자체를 지운다.
- Options Indexes FollowSymLinks를 Options
Tomcat Native Library 설치하기
Native Library를 설치하기 위해서는 APR이 설치되어 있어야 하는데, 일반적으로 Apache를 설치하면 [Apache가 설치된 디렉토리]/bin/apr-1-config 에 설치 되는듯 하다.
3-1. Native Library 다운로드
wget http://apache.tt.co.kr/tomcat/tomcat-connectors/native/1.1.33/source/tomcat-native-1.1.33-src.tar.gz
3-2. 압축 해제하기
tar -xvf [설치파일].tar.gz
3-3. Native Library 설치하기
cd [설치파일 압축 풀린 디렉토리]/jni/native sudo ./configure --prefix=[Tomcat 설치된 디렉토리] --with-apr=[Apache가 설치된 디렉토리]/bin/apr-1-config --with-java-home=$JAVA_HOME --with-ssl=/usr sudo make sudo make install
3-4. Tomcat 8 설정 변경
cd [Tomcat 설치된 디렉토리]/bin vi catalina.sh
catalina.sh
파일에 추가할 부분export LD_LIBRARY_PATH=/app/tomcat8/lib:$LD_LIBRARY_PATH //시작 부분에 추가
- 꼭 추가 해야하는지는 확인을 안해봐서 나중에 확인해보도록 하겠습니다.
- Tomcat 시작 시 SSL 엔진을 못 찾는 다는 오류가 발생한다면 아래 내용 적용하기
vi [Tomcat 설치된 디렉토리]/conf/server.xml
server.xml
파일에 수정할 내용SSLEngine=“off" //기존 on에서 off로 변경
'Linux > CentOS' 카테고리의 다른 글
Apache Web Server 2.4 에 정적파일 캐싱하기 (0) | 2015.11.11 |
---|---|
Apache Web Server 2.4 에 HTTPS 적용하기 (0) | 2015.11.11 |
CentOS 7 에서 Apache Tomcat 8 Container 설치하기 (0) | 2015.11.11 |
CentOS 7 에서 Apache Web Server 2.4 설치하기 (0) | 2015.11.11 |
CentOS 7 에서 Maria DB 설치하기 (0) | 2015.11.10 |