CentOS5にJava SDK5.0u22+Tomcat5+Apache2をインストール
基本は、ここのサイトを参考に行いました。
1.JDKのインストール
以下のURLから「jdk-1_5_0_22-linux-i586-rpm.bin」をダウンロードhttp://java.sun.com/javase/downloads/5u22/jdk
JDKをインストール
#./jdk-1_5_0_22-linux-i586-rpm.bin
環境変数の設定
/etc/profileの最下行に以下の行を追加
export JAVA_HOME=/usr/java/jdk1.5.0_22 export PATH=$PATH:$JAVA_HOME/bin export CLASSPATH=.:$JAVA_HOME/jre/lib:$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar
以下のコマンドで環境変数を反映させます
source /etc/profile
インストールされたか確認します
# java -version java version "1.5.0_22" Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_22-b03) Java HotSpot(TM) Client VM (build 1.5.0_22-b03, mixed mode, sharing)
2.Tomcatのインストール
Tomcat5.5.31をダウンロード
wget http://ftp.kddilabs.jp/infosystems/apache/tomcat/tomcat-5/v5.5.31/bin/apache-tomcat-5.5.31.tar.gz
解凍します
tar zxvf apache-tomcat-5.5.31.tar.gz
移動します
環境変数の設定
/etc/profileの最下行に以下の行を追加
export TOMCAT_HOME=/usr/local/tomcat export CATALINA_HOME=/usr/local/tomcat export CLASSPATH=$CLASSPATH:$CATALINA_HOME/common/lib
以下のコマンドで環境変数を反映させます
source /etc/profile
Tomcat起動スクリプト作成
以下の内容で、/etc/rc.d/init.d/tomcatを作成します。
#!/bin/bash # # Startup script for the tomcat # # chkconfig: 345 80 15 # description: Tomcat is a Servlet+JSP Engine. # Source function library. . /etc/rc.d/init.d/functions source /etc/profile start(){ if [ -z $(/sbin/pidof java) ]; then echo "Starting tomcat" $CATALINA_HOME/bin/startup.sh touch /var/lock/subsys/tomcat else echo "tomcat allready running" fi } stop(){ if [ ! -z $(/sbin/pidof java) ]; then echo "Shutting down tomcat" $CATALINA_HOME/bin/shutdown.sh until [ -z $(/sbin/pidof java) ]; do :; done rm -f /var/lock/subsys/tomcat else echo "tomcat not running" fi } case "$1" in start) start ;; stop) stop ;; restart) stop start ;; status) $CATALINA_HOME/bin/catalina.sh version ;; *) echo "Usage: $0 {start|stop|restart|status}" esac exit 0
スクリプトに実行権限を付与します
chmod +x /etc/rc.d/init.d/tomcat
確認
Tomcatを起動します
/etc/rc.d/init.d/tomcat start
http://hoge:8080をブラウザで開き、Servlet Examplesが正常に動作することを確認します。
自動起動の設定
#chkconfig --add tomcat #chkconfig tomcat on
3.ApacheとTomcatを連携するためのコネクタであるJKのインストール
準備のためhttp-develをインストール
yum -y install httpd-devel
tomcat-connectors 1.2.31をダウンロード
wget http://www.meisei-u.ac.jp/mirror/apache/dist/tomcat/tomcat-connectors/jk/source/tomcat-connectors-1.2.31-src.tar.gz
tomcat-connectors 1.2.31のインストール
#tar zxvf tomcat-connectors-1.2.31-src.tar.gz #cd tomcat-connectors-1.2.31-src/native/ #./configure --with-apxs=/usr/sbin/apxs && make && make install #cp ../conf/workers.properties /etc/httpd/conf/ #cd
Apacheの設定
/etc/httpd/conf.d/jk.confに以下の内容を記述します。
LoadModule jk_module modules/mod_jk.so JkWorkersFile /etc/httpd/conf/workers.properties JkMount /servlets-examples/* ajp13 JkMount /jsp-examples/* ajp13
Apacheを起動し、起動できるか確認します。
#/etc/rc.d/init.d/httpd restart
確認すると500 Internal Errorが。。。
/var/log/httpd/mod_jk.logを見ると以下のエラーが記録されていました。
[error] uri_worker_map_ext::jk_uri_worker_map.c (506): Could not find worker with name 'ajp13' in uri map post processing.
ajp13を見つける事が出来ていないようでしたので、
/etc/httpd/conf/workers.propertiesを以下のように修正しました。
worker.list=jk-status ↓ worker.list=jk-status,ajp13
すると正常に確認できました。