연동 이유
▷Apache(아파치) : 정적 콘텐츠(html, img 등) 처리, 웹 서버
▷Tomcat(톰캣) : 동적 콘텐츠(Jsp, Java 등) 처리, 웹 어플리케이션 서버
▷톰캣은 정적인 파일을 로드하는 속도가 아파치보다 느리다.
▷톰캣만으로는 JSP, Servlet만을 서비스 할 수 있다.
▷연동으로 부하 분담.
▷하지만 현재 톰캣은 특정 모듈로 정적 페이지를 처리하기 대문에 속도 문제는 큰 의미가 없어 지금은 Java업무(톰캣), 확장(아파치)의 업무 분담으로 연동하여 사용하는 듯 하다.
1. Tomcat Connector 도구 설치
sudo yum install httpd-devel gcc gcc-c++
2. JDK 설치 ( 이미 설치 시 패스 )
a. 설치 가능한 JDK 확인
yum list |grep ^java
b. 최상위
openjdk-devel (JDK)
설치
※openjdk = JRE
sudo yum installjava-1.8.0-openjdk-devel.x68_6
3. Tomcat 홈페이지에서 Tomcat Connector 다운로드 주소 복사 (오른쪽 클릭 -> 링크 주소 복사)
4. wget으로 해당 파일 다운로드
wget http://mirror.navercorp.com/apache/tomcat/tomcat-connectors/jk/tomcat-connectors-1.2.42-src.tar.gz
5. 압축을 풀고 Tomcat 폴더로 이동 (폴더 정리 겸)
sudo tar -xzf tomcat-connectors-1.2.42-src.tar.gz
mv [옮길 파일] [옮길 위치]
6. Tomcat Connector 디렉토리의 native 디렉토리로 이동 후 설치
cd /tomcat-connectors-1.2.42-src/native
./configure --with-apxs=/usr/bin/apxs
sudo make && make install
7. workers.properties 파일 생성 후 아파치로 수신한 내용을 톰캣으로 전달 할 수 있도록 내용 추가
cd /etc/httpd/conf
sudo vi workers.properties
worker.list=ajp13 worker.ajp13.port=8009 worker.ajp13.host=localhost worker.ajp13.type=ajp13
8. mod_jk.conf 파일도 생성
sudo vi mod_jk.conf
톰캣폴더 -> 각자 톰캣 폴더 위치 또는 링크
<IfModule mod_jk.c>
JkWorkersFile "/etc/httpd/conf/workers.properties"
JkLogFile "톰캣폴더/logs/mod_jk.log"
JkLogLevel info
JkAutoAlias "톰캣폴더/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>
9. httpd.conf 파일 수정
sudo vi httpd.conf
Include conf .modules.d/* .conf 아래에 LoadModule jk_module modules/mod_jk.so 추가
#ServerName 주석 제거 후 서버 주소 입력 맨 마지막 줄에 Include conf/mod_jk.conf 추가
10. SELinux 끄기
sudo vi /etc/sysconfig/selinux
SELINUX=enforcing -> disabled로 수정
11. 끝! 포트번호를 안써도 톰캣 화면이 나온다.
'개발 환경 및 오류' 카테고리의 다른 글
ftp와 sftp (0) | 2017.01.08 |
---|---|
AWS : Elastic Beanstalk (0) | 2017.01.06 |
AWS : RDS DB 인스턴스 연결 오류 (0) | 2017.01.05 |
No package MariaDB-server available. (0) | 2017.01.05 |
AWS : LAMP 웹 서버 설치 (0) | 2017.01.04 |