톰캣 6 버전 받기
압축해제
tar zvfx apache-tomcat-6.0.35.tar.gz
방화벽 예외 등록
방화벽을 사용할수 있도록 툴을 설치
yum install setuptool system-config-firewall-tui
그리고
setup 명령어를 사용하면 방화벽예 예외 등록을 할수있다.
firewell configuration 으로 가서
8080=tomcat를 설정해준다
그리고
http://해당아이피:8080 을 url로 인터넷을 접속하면 고양이 그림이 뜬다.
아파치, 자바, 톰캣은 설치되어 있는 상태다. 현재 사용 버전은 다음과 같다.
아파치: Apache/2.2.3
자바: java version "1.6.0_11"
톰캣: apache-tomcat-6.0.18
아파치는 Centos설치할 때 있던 것을 그대로 사용했다.
yum을 통해 업데이트가 된것인지는 모르겠다.
아파치가 rpm이나 yum을 통해 설치되어, 소스컴파일을 통해 설치된 것이 아니라면 mod_jk컴파일을 위해 apxs(APache eXtenSion 도구)을 yum을 통해 설치해야 한다.
$yum install httpd-devel
apxs는 /usr/sbin/apxs 이 위치에 설치된다.
http://tomcat.apache.org/download-connectors.cgi 에서 "Tomcat Connectors JK 1.2"을 받는다.
톰캣 커넥터를 다운받아 압축을 풀고
tomcat-connectors-1.2.27-src/native
여기서
$./buildconf.sh
$./configure --with-apxs=/usr/sbin/apxs
$make && make install
이렇게 하면 아파치에 로드할 mod_jk.so 라는 공유라이브러리가 /usr/lib/httpd/modules 폴더에 생성된다.
이 mod_jk.so파일을 아파치에서 사용하기위해 아파치 설정파일을 연다.
Centos5의 경우 /etc/httpd/conf 폴더에 httpd.conf파일이 아파치 설정파일이다. 레드햇 계열은 거의 여기에 설정파일이 있다.
LoadModule이라고 써있는 가장 아래에 다음을 추가한다.
LoadModule jk_module modules/mod_jk.so
방금 컴파일한 아파치 톰캣 커넥터를 아파치로 로드한다는 의미다.
그리고 설정파일 가장 아래 다음 내용을 추가한다.
#################################################
<IfModule mod_jk.c>
JkWorkersFile conf/workers.properties
JkLogFile logs/mod_jk.log
JkLogLevel debug
JkLogStampFormat "[%a %b %d %H:%M:%S %Y] "
JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories
JkRequestLogFormat "%w %V %T"
#JkMount /examples/jsp/* ajp13
#JkMount /examples/servlets/* ajp13
#JkMount /*.jsp ajp13
#JkMount /servlet/* ajp13
</IfModule>
#################################################
VirtualHost를 할경우 다음을 참고하여 추가 한다.
NameVirtualHost *:80
<VirtualHost _default_:80>
DocumentRoot /var/www/html
</VirtualHost>
아파치, 자바, 톰캣은 설치되어 있는 상태다. 현재 사용 버전은 다음과 같다.
아파치: Apache/2.2.3
자바: java version "1.6.0_11"
톰캣: apache-tomcat-6.0.18
아파치는 Centos설치할 때 있던 것을 그대로 사용했다.
yum을 통해 업데이트가 된것인지는 모르겠다.
아파치가 rpm이나 yum을 통해 설치되어, 소스컴파일을 통해 설치된 것이 아니라면 mod_jk컴파일을 위해 apxs(APache eXtenSion 도구)을 yum을 통해 설치해야 한다.
$yum install httpd-devel
apxs는 /usr/sbin/apxs 이 위치에 설치된다.
http://tomcat.apache.org/download-connectors.cgi 에서 "Tomcat Connectors JK 1.2"을 받는다.
톰캣 커넥터를 다운받아 압축을 풀고
tomcat-connectors-1.2.27-src/native
여기서
$./buildconf.sh
$./configure --with-apxs=/usr/sbin/apxs
$make && make install
이렇게 하면 아파치에 로드할 mod_jk.so 라는 공유라이브러리가 /usr/lib/httpd/modules 폴더에 생성된다.
이 mod_jk.so파일을 아파치에서 사용하기위해 아파치 설정파일을 연다.
Centos5의 경우 /etc/httpd/conf 폴더에 httpd.conf파일이 아파치 설정파일이다. 레드햇 계열은 거의 여기에 설정파일이 있다.
LoadModule이라고 써있는 가장 아래에 다음을 추가한다.
LoadModule jk_module modules/mod_jk.so
방금 컴파일한 아파치 톰캣 커넥터를 아파치로 로드한다는 의미다.
그리고 설정파일 가장 아래 다음 내용을 추가한다.
#################################################
<IfModule mod_jk.c>
JkWorkersFile conf/workers.properties
JkLogFile logs/mod_jk.log
JkLogLevel debug
JkLogStampFormat "[%a %b %d %H:%M:%S %Y] "
JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories
JkRequestLogFormat "%w %V %T"
#JkMount /examples/jsp/* ajp13
#JkMount /examples/servlets/* ajp13
#JkMount /*.jsp ajp13
#JkMount /servlet/* ajp13
</IfModule>
#################################################
VirtualHost를 할경우 다음을 참고하여 추가 한다.
NameVirtualHost *:80
<VirtualHost _default_:80>
DocumentRoot /var/www/html
</VirtualHost>
<VirtualHost *:80>
ServerAdmin superip@gmail.com
DocumentRoot /home/jinhan2/jsp
ServerName jsp.superip.net
JkMount /*.jsp ajp13
</VirtualHost>
이렇게 하면 기본은 /var/www/html
jsp.superip.net 은 html,php 의 경우 /home/jinhan2/jsp
jsp의 경우 기본 /usr/local/tomcap/webapps/ROOT
에서 jsp를 불러 온다.
그리고 현재 서버에 접속하면 기본적으로 보여주는 DocumentRoot는 다음과 같이 설정되어 있다.
DocumentRoot "/var/www/html"
아파치 설정파일이 있는 동일한 폴더(/etc/httpd/conf)에 workers.properties 파일을 만든다.
그리고 아래 내용을 쓰고 저장한다. 각자 톰캣이 설치된 위치, 자바의 홈을 맞게 적어주면 된다.
#################################################
workers.tomcat_home=/usr/local/apache-tomcat-6.0.18
workers.java_home=/usr/java
ps=/
worker.list=ajp13
worker.default.port=8009
worker.default.host=localhost
worker.default.type=ajp13
worker.default.lbfactor=1
#################################################
톰캣이 설치된 apache-tomcat-6.0.18/webapps/ROOT 폴더 전체를 아파치의 DocumentRoot에 복사한다.
아파치와 톰캣을 차례대로 시작하고 브라우저에 자신의 서버주소를 적고 뒤에 /ROOT라고 붙여 주면 고양이가 당신을 쳐다보고 있을 것이다. 이제 포트번호 8080을 적지 않아도 된다.
서버 사용자의 각자 계정에서 톰캣을 사용하는 방법을 설명하겠다.
나의 경우 아파치 설정파일에서 Alias를 사용해 ~/myid 로 인터넷 폴더에 접근하지 않아도 되도록 설정되어 있다.
demo라는 사용자는 주소창에 http://localhost/demo 로 public_html폴더에 접근하도록 되어 있다.
아파치 설정파일에 다음과 같이 적는다.
Alias /demo/ "/home/demo/public_html/"
먼저 톰캣 세부설정이 끝나 있어야 한다. 세부설정은 http://blog.naver.com/imisehi/150036772588을 참고하면 된다.
톰캣의 설정파일이 있는 conf 폴더에서 server.xml파일을 연다.
</Host>태그 위에 아래와 같이 입력한다.
<Context path="/demo" docBase="/home/demo/public_html" dubug="0" reloadable="true" />
jsp를 다른 계정 사용자에게 제공하고싶으면 위의 설정을 계정 id에 맞게 추가하면 된다.
이제 저장하고 나가서 톰캣을 재시작 하면 된다.
자신이 만든 클래스파일을 jsp에서 사용하고 싶은 경우 public_html폴더 밑에 WEB-INF폴더를 만들고 그 폴더 안에 web.xml파일이 있어야 하며 classes라는 폴더 밑에 클래스파일들을 위치시켜야 한다.
ServerAdmin superip@gmail.com
DocumentRoot /home/jinhan2/jsp
ServerName jsp.superip.net
JkMount /*.jsp ajp13
</VirtualHost>
이렇게 하면 기본은 /var/www/html
jsp.superip.net 은 html,php 의 경우 /home/jinhan2/jsp
jsp의 경우 기본 /usr/local/tomcap/webapps/ROOT
에서 jsp를 불러 온다.
그리고 현재 서버에 접속하면 기본적으로 보여주는 DocumentRoot는 다음과 같이 설정되어 있다.
DocumentRoot "/var/www/html"
아파치 설정파일이 있는 동일한 폴더(/etc/httpd/conf)에 workers.properties 파일을 만든다.
그리고 아래 내용을 쓰고 저장한다. 각자 톰캣이 설치된 위치, 자바의 홈을 맞게 적어주면 된다.
#################################################
workers.tomcat_home=/usr/local/apache-tomcat-6.0.18
workers.java_home=/usr/java
ps=/
worker.list=ajp13
worker.default.port=8009
worker.default.host=localhost
worker.default.type=ajp13
worker.default.lbfactor=1
#################################################
톰캣이 설치된 apache-tomcat-6.0.18/webapps/ROOT 폴더 전체를 아파치의 DocumentRoot에 복사한다.
아파치와 톰캣을 차례대로 시작하고 브라우저에 자신의 서버주소를 적고 뒤에 /ROOT라고 붙여 주면 고양이가 당신을 쳐다보고 있을 것이다. 이제 포트번호 8080을 적지 않아도 된다.
서버 사용자의 각자 계정에서 톰캣을 사용하는 방법을 설명하겠다.
나의 경우 아파치 설정파일에서 Alias를 사용해 ~/myid 로 인터넷 폴더에 접근하지 않아도 되도록 설정되어 있다.
demo라는 사용자는 주소창에 http://localhost/demo 로 public_html폴더에 접근하도록 되어 있다.
아파치 설정파일에 다음과 같이 적는다.
Alias /demo/ "/home/demo/public_html/"
먼저 톰캣 세부설정이 끝나 있어야 한다. 세부설정은 http://blog.naver.com/imisehi/150036772588을 참고하면 된다.
톰캣의 설정파일이 있는 conf 폴더에서 server.xml파일을 연다.
</Host>태그 위에 아래와 같이 입력한다.
<Context path="/demo" docBase="/home/demo/public_html" dubug="0" reloadable="true" />
jsp를 다른 계정 사용자에게 제공하고싶으면 위의 설정을 계정 id에 맞게 추가하면 된다.
이제 저장하고 나가서 톰캣을 재시작 하면 된다.
자신이 만든 클래스파일을 jsp에서 사용하고 싶은 경우 public_html폴더 밑에 WEB-INF폴더를 만들고 그 폴더 안에 web.xml파일이 있어야 하며 classes라는 폴더 밑에 클래스파일들을 위치시켜야 한다.

댓글목록
슈퍼아이피님의 댓글
Yum을 이용해서 CD로 설치시
yum --disablerepo=\* --enablerepo=c6-media install tomcat6 tomcat6-admin-webapps tomcat6-webapps
그리고 의존성에 의해 설치 안될 경우 해당 패키지를 먼저 설치 해줘야 한다.
apache와 tomcat을 연결 할때는 jakarata-tomcat-connectors 가 있어야 한다. 보통 mod_jk.so 를 아파치에 올려서 연결을 한다.
http://archive.apache.org/dist/tomcat/tomcat-connectors/jk/binaries/linux/
여기서 apache 와 OS 버전에 맞는 binary 버전을 받아서 사용을 하던지 소스를 받아서 컴파일을 하던지 하면 된다.
rpm버전의 경우 /etc/httpd/modules 에 mod_jk.so 이름으로 복사 해 놓는다.
/etc/httpd/conf/httpd.conf 파일에 다음을 추가한다.
LoadModule jk_module modules/mod_jk.so
JkWorkersFile conf/workers.properties
JkLogFile logs/mod_jk.log
JkLogLevel info
JkLogStampFormat "[%a %b %d %H:%M%S %Y]"
JkMount /* test1
저장한다.
/etc/httpd/conf/workers.properties 파일을 생성한다.
worker.list=test1
worker.test1.port=8009
worker.test1.host=localhost
worker.test1.type=ajp13
위 설정은 본문 내용을 참조해서 수정한다.
service tomcat6 restart
service httpd restart
그리고 테스트 해본다.