Linux

Web(Httpd) – WAS(Tomcat) 연동 : mod_jk

enterit 2023. 4. 11. 17:17

httpd-devel 패키지 설치

# dnf install httpd-devel

# rpm -qa | grep httpd-devel

httpd-devel-2.4.37-47.module+el8.6.0+14529+083145da.1.x86_64

 

mod_jk 설치

 http://tomcat.apache.org ==> Tomcat Connectors

tomcat-connectors-1.2.48-src.tar.gz 다운로드

# cd /opt/

압축풀기

# cd tomcat-connectors-1.2.48-src/native/

# wheris apxs

apxs: /usr/bin/apxs /usr/share/man/man1/apxs.1.gz

# ./configure --with-apxs=/usr/bin/apxs

# make

# make install

 

확인

# ll /etc/httpd/modules/*jk*

-rwxr-xr-x 1 root root 1565864 Mar 1 12:34 /etc/httpd/modules/mod_jk.so

 

* 설정

# vi /etc/httpd/conf/httpd.conf

LoadModule jk_module modules/mod_jk.so

 

# cd /etc/httpd/conf.d/

 

# vi mod_jk.conf

<IfModule jk_module>
  # workers.properties 파일의 위치를 지정
  # worker란 들어온 요청을 처리하기 위한 톰캣 인스턴스
  JkWorkersFile conf.d/workers.properties
 
  # mod_jk 로그파일 위치를 지정
  JkLogFile logs/mod_jk.log
 
  # 로그레벨을 지정 [debug/error/info]
  JkLogLevel info
 
  # 로그에 출력되는 시간 포멧을 지정
  JkLogStampFormat "[%a %b %d %H:%M:%S %Y]"
 
  JkShmFile logs/mod_jk.shm
 
  # 아파치로 부터 들어오는 요청에 대해서 Url 패턴별로 workers.properties
  # 정의한 worker에게 매핑시키는 설정을 지정
  JkMountFile conf.d/uriworkermap.properties
</IfModule>

 

# vi workers.properties

# listmod_jk가 사용할 모든 작업자리스트 기술(콤마로 구분)
# type은 톰캣과 통신할 프로토콜을 정의(ajp12, ajp13, ajp14, jni, lb)
#        ajp13프로토콜이 가장 널리 사용되며, lb는 로드밸런싱에 사용.
# host는 대상 톰캣의 IP
# port는 톰캣과 통신할 포트
worker.list=worker1
worker.worker1.type=ajp13
 
# 같은 서버
#worker.worker1.host=localhost
 
# 같은 서버
#worker.worker1.host=192.168.0.39
 
# 다른 서버 위치
worker.worker1.host=192.168.2.173
 
worker.worker1.port=8009

 

# vi uriworkermap.properties

# /docs/=worker1 : /docs 경로가 들어오면 workers.properties에 정의한 worker1 톰캣인스턴스로 매핑 , 설치된 톰캣의 도큐먼트 페이지로 이동
# /* : 모든 요청
 
/*=worker1

 

2번 웹서버에는 2로 설정

 

* WAS 설정

# vi /opt/tomcat/conf/server.xml

<Connector protocol="AJP/1.3"
               address="0.0.0.0"
               port="8009"
               redirectPort="8443"
               secretRequired="false" />
<Connector port="80" protocol="HTTP/1.1"

 

# /opt/tomcat/bin/shutdown.sh

 # /opt/tomcat/bin/startup.sh

# systemctl restart httpd

접속 테스트