service:was:tomcat:tomcat_apache_virtualhost
Install Tomcat6 on Debian(squeeze) with virtual hosts and Apache2 integration
debian package install
sun-java install
apt-get install sun-java6-bin sun-java6-jdk sun-java6-jre
tomcat6 package install
apt-get install libtomcat6-java tomcat6 tomcat6-admin \
tomcat6-common tomcat6-docs tomcat6-examples tomcat6-user
apache2 package install
apt-get install apache2 apache2-mpm-prefork apache2-utils apache2.2-bin \
apache2.2-common libapache2-mod-jk libapache2-mod-php5
설치/설정 경로
JDK 1.6 설치경로 (JAVA_HOME) | /usr/lib/jvm/java-6-sun |
TOMCAT 구동 Script | /etc/init.d/tomcat6 |
TCOMAT 설치경로 (TCOMAT_HOME) | /var/lib/tomcat6 |
TOMCAT Server 설정파일 | /etc/tomcat6/server.xml |
TOMCAT Manager 설정파일 | /etc/tomcat6/tomcat-users.xml |
Context 설정파일 | /[SERVICE DIRECTORY]/META-INF |
APACHE 구동 Script | /etc/init.d/apache2 |
APACHE mod_jk 모듈설정 | /etc/apache2/mod-enabled/jk.load |
APACHE workers 파일위치정보 | /etc/apache2/mod-enabled/jk.conf |
APACHE TOMCAT SERVER(workers) 설정정보파일 | /etc/libapache2-mod-jk/workers.properties |
APACHE Virtual HOST 설정 디렉토리 | /etc/apache2/sites-enabled/ |
tomcat virtual hosting
virtual host 란 하나의 여러개의 웹사이트를 운영하는 것이다.
tomcat virtual host 설정은 Host 에서 처리할 수 있다.
tomcat 에서는 server.xml 에서 virtual host 설정을 할 수 있다.
server.xml 을 살펴보면, Server 아래 Service가 있고, Service 아래 Engine , Engine 아래 Host 설정이 있다.
Server > Service > Engine > Host
virtual host 는 크게 두가지 방법으로 설정할 수 있다.
-
(예) starlits.adminschool.net , mrkayhyun.adminschool.net , bearcho.adminschool.net , beans.adminschool.net
Host 추가로 설정할 수 있다.
server.xml 에서 Host 영역을 복사하여 수정하면 된다.
포트(Port)로 분류 : (예)
(예) starlits.adminschool.net:8080 , starlits.adminschool.net:8090 , starlits.adminschool.net:9090
Service 추가로 설정할 수 있다.
server.xml에서 Service 영역을 복사하여 수정하면 된다.
도메인(Domain) Virtual Host 설정
server.xml 파일에서 </Host> 아래에 다음 내용을 추가한다.
starlits.adminschool.net 이라는 도메인을 추가하는 방법이다.
...
</Host>
<!--
starlits.adminschool.net
-->
<Host name="wolf.adminschool.net"
appBase=""
unpackWARs="true"
autoDeploy="true"
xmlValidation="false"
xmlNamespaceAware="false"
debug="1"
>
<Context path="" docBase="/home/starlits/html" reloadable="true">
<Resources className="org.apache.naming.resources.FileDirContext" allowLinking="true" />
</Context>
</Host>
tomcat 을 재시작한다.
# /etc/init.d/tomcat6 restart
포트(Port) Virtual Host 설정
Apache2 mod_jk 설정
Apache2에서 tomcat 을 연결하려면, mod_jk 모듈이 필요하다.
workers.properties , jk.conf , virtualhost_apache2.conf 설정이 필요하다.
workers.properties
/etc/libapache2-mod-jk/workers.properties 설정파일
workers.tomcat_home=/usr/share/tomcat6
workers.java_home=/usr/lib/jvm/default-java
ps=/
worker.list=ajp13_worker
worker.ajp13_worker.port=8009
worker.ajp13_worker.host=localhost
worker.ajp13_worker.type=ajp13
worker.ajp13_worker.lbfactor=1
worker.loadbalancer.type=lb
worker.loadbalancer.balance_workers=ajp13_worker
jk.conf
/etc/apache2/sites-enabled/jk.conf 설정파일
JkWorkersFile /etc/libapache2-mod-jk/workers.properties
JkLogFile /var/log/apache2/mod_jk.log
JkLogLevel info
JkMount /*.jsp ajp13_worker
JkMount /*/servlet/ ajp13_worker
/etc/apache2/sites-enabled/
/etc/apache2/sites-available/adminschool.net 이라는 파일을 만든다.
<color red>
JkMount /*.jsp ajp13_worker</color> 설정을 추가해 준다.
<VirtualHost *:80>
JkMount /*.jsp ajp13_worker
ServerName starlits.adminschool.net
DocumentRoot /home/starlits/html/
ServerAdmin starlits@adminshcool.net
ErrorLog /var/log/apache2/wolf.adminschool.net-error.log
CustomLog /var/log/apache2/wolf.adminschool.net-access.log combined env=!dontlog
</VirtualHost>
/etc/apache2/sites-enabled/001-adminschool.net 이라는 링크를 만든다.
# cd /etc/apache2/sites-enabled/
# ln -s ../sites-available/adminschool.net 001-adminschool.net
APACHE를 재시작한다.
# /etc/init.d/apache2 restart
service/was/tomcat/tomcat_apache_virtualhost.txt · 마지막으로 수정됨: 2012/04/13 13:17 저자 starlits