(最終更新日時:2008-06-19 03:51:06)
ダウンロード
| ・ | Tomcat 6.x Binary Distributions - Core | : | apache-tomcat-6.0.16.tar.gz |
事前準備
関連パッケージとして、下記を事前にインストールしておきます。
インストール
tomcat実行用の group および user を作成します。
# groupadd tomcat
# useradd -g tomcat -s /sbin/nologin -d /opt/tomcat -M tomcat
/optディレクトリでアーカイブを展開し、Tomcatをインストールします。
# cd /opt
# tar xzvf ダウンロード先/apache-tomcat-6.0.16.tar.gz
# ln -s apache-tomcat-6.0.16 tomcat
Tomcatをデーモンで実行させるため、jsvcツールをインストールします。
# cd /opt/tomcat/bin
# tar xzvf jsvc.tar.gz
# cd jsvc-src
# autoconf
# sh configure
# make
# cp jsvc ..
# cd ..
# rm -rf jsvc-src
# chown -R -H --dereference tomcat.tomcat /opt/tomcat
データベースドライバ等の配置
PostgreSQL や
MySQL
のJDBCドライバは、
/opt/tomcat/lib に配置しています。
配置後、
# chown -R -H --dereference tomcat.tomcat /opt/tomcat
で、所有者を変更しておきます。
Webアプリケーションの配置設定
Webアプリケーションは、デフォルトの
/opt/tomcat/webapps ではなく、$CATALINA_BASE
を設定し、
/home/www/tomcat/webapps に配置するようにしています。
# mkdir -p /home/www/tomcat/conf
# mkdir -p /home/www/tomcat/webapps
# mkdir -p /home/www/tomcat/work
# cp /opt/tomcat/conf/server.xml /home/www/tomcat/conf/
# cp /opt/tomcat/conf/web.xml /home/www/tomcat/conf/
# chown -R tomcat.tomcat /home/www/tomcat
GUI管理ツールの設定
managerロール(Webアプリケーション管理ツール用)とadminロール(仮想ホスト管理ツール用)のユーザの登録を行います。
例では、managerロールユーザ名 :
manager、パスワード :
manager
adminロールユーザ名 :
admin、パスワード :
admin
で登録しています。
# vi /home/www/tomcat/conf/tomcat-users.xml
<?xml version='1.0' encoding='utf-8'?>
<tomcat-users>
<role rolename="manager"/>
<role rolename="admin"/>
<user username="manager" password="manager" roles="manager"/>
<user username="admin" password="admin" roles="admin"/>
</tomcat-users>
# chmod 600 /home/www/tomcat/conf/tomcat-users.xml
# chown -R tomcat.tomcat /home/www/tomcat
コンテキストの設定を行います。
GUI管理ツールは
/tomcat/ 配下の階層ディレクトリでアクセスします。
# mkdir -p /home/www/tomcat/conf/Catalina/localhost
# cd /home/www/tomcat/conf/Catalina/localhost
# (Webアプリケーション管理ツールの設定を行います)
# cp /opt/tomcat/webapps/manager/META-INF/context.xml tomcat#manager.xml
# vi tomcat#manager.xml
:
<Context docBase="${catalina.home}/webapps/manager/" antiResourceLocking="false" privileged="true" />
# (仮想ホスト管理ツールの設定を行います)
# cp /opt/tomcat/webapps/host-manager/META-INF/context.xml tomcat#host-manager.xml
# vi tomcat#host-manager.xml
:
<Context docBase="${catalina.home}/webapps/host-manager/" antiResourceLocking="false" privileged="true" />
# (Tomcatドキュメントの設定を行います)
# cp /opt/tomcat/webapps/manager/META-INF/context.xml tomcat#docs.xml
# vi tomcat#docs.xml
:
<Context docBase="${catalina.home}/webapps/docs/" antiResourceLocking="false" privileged="true" />
# chown -R tomcat.tomcat /home/www/tomcat
Apacheとの連携
Apacheは仮想ホストで稼動させていますので、Apacheの設定ファイル
httpd-vhosts.conf
に Tomcat との連携を設定します。
# vi /usr/local/apache2/conf/extra/httpd-vhosts.conf
:
# (連携させるホストの VirtualHost に設定します)
<VirtualHost 192.168.11.11:80>
:
ServerName www.system-act.com
:
# (GUI管理ツールの連携設定を行います。IPアドレスによるアクセス制限を行っています。)
<Location /tomcat/>
Order Deny,Allow
Deny from all
Allow from 192.168.12.0/24
ProxyPass ajp://localhost:8009/tomcat/
</Location>
:
<VirtualHost>
8080ポートでのTomcat起動を停止します。
# vi /home/www/tomcat/conf/server.xml
:
Define a non-SSL HTTP/1.1 Connector on port 8080
-->
<!--
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
-->
:
起動設定
自動起動スクリプトを作成します。
# vi /etc/rc.d/init.d/tomcat
#!/bin/sh
#
# chkconfig: - 80 20
# description: tomcat
# Source function library.
. /etc/init.d/functions
JAVA_HOME=/opt/jdk
CATALINA_HOME=/opt/tomcat
CATALINA_BASE=/home/www/tomcat
TOMCAT_USER=tomcat
TMP_DIR=/tmp
CATALINA_OPTS=
CLASSPATH=\
$JAVA_HOME/lib/tools.jar:\
$CATALINA_HOME/bin/commons-daemon.jar:\
$CATALINA_HOME/bin/bootstrap.jar
PIDFILE=/var/run/tomcat.pid
LOCKFILE=/var/lock/subsys/tomcat
DAEMON=$CATALINA_HOME/bin/jsvc
start(){
#
# Start Tomcat
#
echo -n "Starting Tomcat: "
$DAEMON \
-pidfile $PIDFILE \
-user $TOMCAT_USER \
-home $JAVA_HOME \
-Dcatalina.home=$CATALINA_HOME \
-Dcatalina.base=$CATALINA_BASE \
-Djava.io.tmpdir=$TMP_DIR \
-outfile $CATALINA_HOME/logs/catalina.out \
-errfile '&1' \
$CATALINA_OPTS \
-cp $CLASSPATH \
org.apache.catalina.startup.Bootstrap
#
# To get a verbose JVM
#-verbose \
# To get a debug of jsvc.
#-debug \
RETVAL=$?
if [ $RETVAL = 0 ]; then
echo_success
touch $LOCKFILE
else
echo_failure
fi
echo
}
stop(){
#
# Stop Tomcat
#
echo -n "Shutting down Tomcat: "
$DAEMON \
-stop \
-pidfile $PIDFILE \
org.apache.catalina.startup.Bootstrap
RETVAL=$?
if [ $RETVAL = 0 ]; then
echo_success
rm -f $PIDFILE $LOCKFILE
else
echo_failure
fi
echo
}
case "$1" in
start)
start
;;
stop)
stop
;;
restart)
stop
start
;;
status)
status $DAEMON
RETVAL=$?
;;
*)
echo $"Usage: tomcat {start|stop|restart|status}"
exit 1
;;
esac
# chmod 755 /etc/rc.d/init.d/tomcat
# chkconfig tomcat on
# service tomcat start サービスを起動します
# service httpd restart Apacheを再起動します
GUI管理ツールの稼働確認
Webブラウザで
http://www.system-act.com/tomcat/manager/html にアクセスします。
Copyright © 2004-2009 System House ACT. All Rights Reserved.