mod_jk 설정을 마치고 연결을 하려고 보니 

 

브라우저에서는 

503 Service Unavailable 에러가 발생했고 

 

apache/logs/mod_jk.log 파일을 열어보니 아래와 같은 에러가 계속해서발생했다. 

 

ajp_send_request::jk_ajp_common.c (1724): (user) connecting to backend failed. Tomcat is probably not started or is listening on the wrong port (errno=111) 
ajp_send_request::jk_ajp_common.c (1724): (user) connecting to backend failed. Tomcat is probably not started or is listening on the wrong port (errno=111) 
ajp_service::jk_ajp_common.c (2795): (user) connecting to tomcat failed (rc=-3, errors=1, client_errors=0). 
ajp_send_request::jk_ajp_common.c (1724): (user) connecting to backend failed. Tomcat is probably not started or is listening on the wrong port (errno=111) 
ajp_send_request::jk_ajp_common.c (1724): (user) connecting to backend failed. Tomcat is probably not started or is listening on the wrong port (errno=111) 
ajp_service::jk_ajp_common.c (2795): (user) connecting to tomcat failed (rc=-3, errors=2, client_errors=0). 
service::jk_lb_worker.c (1685): All tomcat instances failed, no more workers left 

 

 

 

내가 구성하는 서버는 현재 아래와 같은 구조로

was에 서비스를 띄우고 web에서 mod_jk를 이용해서 연결하려고 했었다. 

 

 

수 차례 구글링을 해보고 여러가지 방법을 찾아보았지만 해법을 못찾았다 ㅠㅠ 

 

결국 mod_jk에서 제공하는 다른 기능인 mod_proxy를 사용해보기로 했다. 

 

 

우선 apache 설정하기. 

vi httpd.conf 

mod_jk가 정상적으로 설치되었다면 아래 내용이 주석처리되어있을거다. 

아래 세가지 주석 풀어주자~~

LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_connect_module modules/mod_proxy_connect.so
LoadModule proxy_http_module modules/mod_proxy_http.so

 

 

vi apache/conf/extra/httpd-vhost.conf 파일 수정 

<VirtualHost *:80>

 ServerName servername

 ServerAlias serveralias

ProxyRequests Off

 ProxyPreserveHost On

 <Proxy *>

    Order deny,allow

    Allow from all

</Proxy>

 ProxyPass / http://WASIP:8009/

 ProxyPassReverse / http:// WASIP:8009

 ProxyVia On

</VirtualHost>

 

톰캣을 사용한다면 Server.xml 설정 


<Connector executor="tomcatThreadPool" port="8009" protocol="HTTP/1.1" connectionTimeout="20000" />

 

SpringBoot 를 사용한다면 application.properties 설정 

server.port=9010

 

* 연결되어야할 ajp 포트번호를 server.port에 적어줘야한다. 

(이렇게 연결하면 따로 ajp 설정 작업을 안해줘서 편하긴한것같다.. ) 

 

 

mod_jk는 아파치와 톰캣을 연결해주는 기능을 가진 모듈이다. 

 

내가 작업중인 서버는 인터넷 연결이 막혀있는 관계로 직접 다운받는 방법으로 설치했다. 

 

1. tomcat.apache.org/connectors-doc/ 에 접속해1, 2 순서대로 클릭해준다. 

클릭하고 나면 다운로드 폴더에 tomcat-connectors-1.2.48-src.tar.gz 가 있을거다. 이거 복사해서 

ftp를 이용해 서버에 업로드해준다. 

 

 

아파치설치경로/apache/conf 위치에 해당 파일 압축을 풀어준다. 

tar zxvf tomcat-connectors-1.2.48-src.tar.gz

 

압축을 풀어주면 이렇게 디렉토리 하나가 생성되는데 

 

native 폴더로 이동해준다. 

cd tomcat-connectors-1.2.48-src/native/

 

이렇게 여러가지 파일들이 있는지 확인해보고 

 

 

빌드를 해주는 명령어를 입력한다. 

./buildconf.sh 

 

다 됐으면 아래 명령어 실행 

./configure --with-apxs=/아파치설치경로/apache/bin/apxs

 

이제 make와 make install을 순서대로 실행해준다. 

make
make install

 

 

여기까지 해주고나서 /아파치설치경로/apache/modules 경로로 이동한다. 

cd /아파치설치경로/apache/modules

 

ls -al 명령어로 리스트를 확인해본다 .

 

이렇게 mod_jk.so가 설치되어있다면 정상적으로 설치는 끝났다!. 

 

 

 

그럼 다음 포스트에서는 간단하다면 간단하고 어렵다면 어려운 설정작업.. 포스팅하겠습니다. 

 

끝!

+ Recent posts