아파치와 톰캣을 mod_jk를 통해 연동 하고자 한다. (localhost, HTTP)
최종 결과물은 아파치의 80포트 진입 시 아파치 톰캣 8080 포트로 진입되는 것
톰캣 서버가 보이거나 따로 작성한 html 파일 내용이 보여야함
필자는 Cent OS 에서 실습을 진행하였음
아파치와 톰캣은 이미 설치되어 있고 아파치:80, 톰캣:8080 으로 테스트 웹브라우저 출력 확인은 완료된 상태임
아직 확인 완료 하지 못한 부분은 아래 링크 확인
아파치 설치
https://chance-story.tistory.com/94
[CentOS 7] 아파치 설치 및 실행 (yum 활용)
개발 환경 $ cat /etc/redhat-release CentOS Linux 버전 : 7.9.2009 아파치 설치 - yum 활용 => 설치에 필요한 패키지를 같이 설치해줌 => yum 으로 설치 시 systemctl 에 자동으로 서비스가 등록된다 // root 로그인 하
chance-story.tistory.com
https://chance-story.tistory.com/95
[CentOS 7] 아파치 톰캣 설치 및 실행 (jdk 설치, wget 활용)
open jdk 11 설치 => java --version 을 통해 설치 유무 확인 설치가 되어있지 않다면 설치 가능 리스트 확인 # yum list java*jdk-devel [root@localhost test2]# yum list java*jdk-devel Loaded plugins: fastestmirror, langpacks Loading
chance-story.tistory.com
설치 환경 확인
# java -version
# yum list installed | grep tomcat
// 위 두 명령어를 통한 환경 확인
라이브러리 설치
// tomcat connector 컴파일 및 구성에 필요한 라이브러리 설치
# yum install httpd-devel gcc
Tomcat Connector 설치
https://tomcat.apache.org/download-connectors.cgi
Apache Tomcat® - Tomcat Connectors (mod_jk) Downloads
You must verify the integrity of the downloaded files. We provide OpenPGP signatures for every release file. This signature should be matched against the KEYS file which contains the OpenPGP keys of Tomcat's Release Managers. We also provide SHA512 checksu
tomcat.apache.org
파일 다운로드 및 압축 해제
# cd /usr/local
# wget https://dlcdn.apache.org/tomcat/tomcat-connectors/jk/tomcat-connectors-1.2.48-src.tar.gz
--no-check-certificate
# tar -xvzf tomcat-connectors-1.2.48-src.tar.gz
Tomcat Connector Config
# cd /usr/local/tomcat-connectors-1.2.48-src/native
# ./configure --with-apxs=/usr/bin/apxs
# make
아파치 설정 파일 수정
/etc/httpd/conf/httpd.conf 파일 수정
LoadModule jk_module modules/mod_jk.so // mod_jk.so 위치 경로 확인
<VirtualHost *:80>
ServerName localhost
JKMount /*.jsp tomcat
JKMount /*.json tomcat
JKMount /*.xml tomcat
JKMount /*.do tomcat
</VirtualHost>
Include conf.modules.d/*.conf
// 내용 추가
// 아파치 최 상위 설정 파일 (httpd.conf)에서 추가할 설정 파일들을 참조할 수 있도록 함
/etc/httpd/conf/workers.properties
// 파일 생성 하여 내용 작성
// 내용
worker.list=tomcat
worker.tomcat.port=8009
worker.tomcat.host=127.0.0.1
worker.tomcat.type=ajp13
workers.properties 경로 지정 및 log 설정
130 DocumentRoot "/home/test1/apache-tomcat-8.5.89/webapps/ROOT"
131
132 #
133 # Relax access to content within /var/www.
134 #
135 <Directory "/home/test1/apache-tomcat-8.5.89/webapps/ROOT">
136 AllowOverride None
137 # Allow open access:
138 Require all granted
139 </Directory>
/etc/httpd/conf/httpd.conf 파일 내 내용 추가
(기존 내용 주석처리 및 ROOT 경로 확인하고 작성)
/etc/httpd/conf.modules.d/mod_jk.conf
// 신규 파일 작성
//내용
<ifModule jk_module>
JkWorkersFile conf/workers.properties
JkLogFile logs/mod_jk.log
JkLogLevel info
JkShmFile /var/log/httpd/jk-runtime-status
JkWatchdogInterval 30
</ifModule>
이후 서버 재가동
[root@localhost extra]# systemctl restart httpd
Job for httpd.service failed because the control process exited with error code. See "systemctl status httpd.service" and "journalctl -xe" for details.
오류가 보임
systemctl status httpd.service
또는 journalctl -xe 명령어를 통해 오류를 확인해보자
Jun 06 08:21:53 localhost.localdomain httpd[56019]: httpd: Syntax error on line 57 of /etc/httpd/conf/httpd.conf: Syntax error on line 1 of /etc/httpd/conf/ext...directory
오류 위치를 자세히 설명해준다

403 에러 발생 - 접근권한 오류로 보임
=> webapps/ROOT 권한을 chmod 755 로 수정 하였음
ROOT 권한 바꾸고 경로 수정했음
find / -name "ROOT" 경로 찾음
tomcat 에 대한 html 파일 위치 (사용자 마다 다름)
=> /webapps/ROOT/index.html
=> 간단한 html 파일 작성 (ex. hello world 만 출력)
서버 재기동하여 아파치 80 포트 접속 시 톰캣 8080 포트로 연결되는지 확인
참고
[Apache] CentOS 7.8에서 Apache(httpd)와 Tomcat을 mod_jk(AJP Protocol) 방식으로 연동한 프록시 환경 구성하기
CentOS 7.8에서 Apache(httpd)와 Tomcat을 mod_jk 방식으로 연동한 프록시 환경 구성하기 들어가기에 앞서 아래와 같은 Apache ↔ Tomcat간 Proxy 구성방식은 Apache 모듈에 따라 크게 3가지가 있습니다. 1. mod_proxy
antdev.tistory.com
https://jane096.github.io/linux/tomcat-apache-connection/
Linux CentOS 7 Apache/Tomcat 7 mod_jk로 연동하기
Linux에서 tomcat7과 Apache web server 연동하고 에러 해결 정리
jane096.github.io
https://m.blog.naver.com/PostView.naver?isHttpsRedirect=true&blogId=kiss7001&logNo=40197068951
톰캣 연동할때 /usr/sbin/apxs를 못찾는다면
[root@ rosettaDEV native]./configure --with-apxs=/usr/sbin/apxs checking build system type... x86...
blog.naver.com
https://velog.io/@bonjaski0989/WEB-WAS-ApacheTomcat-modjk%EC%97%B0%EB%8F%99
[WEB-WAS] Apache↔Tomcat mod_jk연동
EC2 Linux2 기반 Apache-Tomcat mod_jk 연동 과정에 대하여 상세히 기술한 글입니다.
velog.io
'WEB WAS > 미들웨어' 카테고리의 다른 글
Connection pool (0) | 2023.06.07 |
---|---|
mod_jk.so (Apache Tomcat Connector 모듈 파일) (0) | 2023.06.07 |
[CentOS 7] 아파치 톰캣 설치 및 실행 (jdk 설치, wget 활용) (0) | 2023.06.06 |
[CentOS 7] 아파치 설치 및 실행 (yum 활용) (0) | 2023.06.06 |
Coherence 란? (0) | 2023.06.05 |