Tomcat・ant・J2SDK・mod_jk2のインストール・設定

更新:

Tomcat・ant・J2SDK・mod_jk2のインストール・設定方法。
対象:Linux Fedora, RedHat

Tomcat・ant・J2SDK・mod_jk2のインストール・設定

  • Tomcat関連サイト
    http://www.oracle.com/technetwork/java/index.html
    http://tomcat.apache.org/
  • インストール関連情報
    rpmyum、apt-gettar.gzmake installシェル・環境変数
  • J2SDKのインストール
    J2EE1.4だとtomcat5.5は非対応のようです。
    J2SE5.0以上ならtomcat5.5はOK。
    cd /usr/local/src
    chmod +x j2eesdk-1_4_2005Q1-linux.bin
    ./j2eesdk-1_4_2005Q1-linux.bin
    
    この後、設定に関する質問がいくつか出てきます。
    質問は、適宜回答しながらインストール。
    「yes」や「no」などを入力します。
    途中でインストールディレクトリを聞かれます。
    /usr/local/j2eesdk-1_4_2005Q1-linux
    など、自由に設定(入力)します。

    バージョンを管理したい場合は、ディレクトリ名にバージョン名を書き、 アクセスしやすいようにシンボリックを利用します。
    例えば、
    ln -s j2eesdk-1_4_2005Q1-linux j2sdk
    というように入力すると、j2eesdk-1_4_2005Q1-linuxというディレクトリをj2sdkでアクセスできます。
    好みの問題なので、最初からインストールディレクトリを、/usr/local/j2sdk としてしても良い。

    その後、.bash_profile(bashの場合)にパスを追加。
    export JAVA_HOME=/usr/local/j2sdk
    export PATH=$PATH:$JAVA_HOME/jdk/bin
    
  • antのインストール
    cd /usr/local
    tar xvzf apache-ant-1.6.2-bin.tar.gz
    ln -s apache-ant-1.6.2 ant
    
    その後、.bash_profile(bashの場合)にパスを追加
    export PATH=$PATH:/usr/local/ant/bin
    
  • Tomcatのインストール
    cd /usr/local
    tar xvzf jakarta-tomcat-5.0.28
    ln -s jakarta-tomcat-5.0.28 tomcat
    
    その後、.bash_profile(bashの場合)にパスを追加
    export TOMCAT_HOME=/usr/local/tomcat
    
  • mod_jk2のインストール
    Tomcatは、ウェブサーバの機能もあるので、Apacheがなくても動作します。
    また、ApacheとTomcatを両方起動し、別々に機能させることもできます(ポート番号が別々になります)。
    一方、ApacheとTomcatを連動させる方法もあり、この方法がよく利用されます。
    この場合、HTTPの80番ポートで、通常のページもJavaのページもアクセスできるようになります。
    mod_jk2は、Apache用のモジュールでTomcatと連動させるために利用します。
    cd /usr/local/src
    tar xvzf jakarta-tomcat-connectors-jk2-src-current.tar.gz
    cd jakarta-tomcat-connectors-jk2-2.0.4-src/jk/native2
    ./configure --with-apxs2=/usr/local/apache2/bin/apxs \
    		--with-tomcat50=/usr/local/tomcat \
    		--with-apr=/usr/local/src/apr-1.0.0 \
    		--with-apr-util=/usr/local/src/apr-util-1.0.0
    cp ../build/jk2/apache2/mod_jk2.so /usr/local/apache2/modules/
    cp ../conf/workers2.properties /usr/local/apache2/conf/
    
    vi /usr/local/apache2/conf/httpd.conf
    	LoadModule jk2_module modules/mod_jk2.so
    
    Apacheの設定により、パスなどは多少異なります。
    自分の環境に合わせて指定します。
    Apache・aprのインストール・設定を参照。
  • 動作確認
    /usr/local/tomcat/bin/startup.sh
    /usr/local/tomcat/bin/shutdown.sh
    または
    /usr/local/tomcat/bin/catalina.sh start
    /usr/local/tomcat/bin/catalina.sh stop
    で、起動・停止。

    起動後、http://自分のアドレス:8080/ でtomcatの表紙が見れます(ポート番号8080の場合)。
    mod_jk2 を利用した場合は、ポート番号はいりませんが、http://自分のアドレス/ だとApacheの表紙が出ます。
  • 自動起動スクリプト
    起動スクリプトファイルがない場合は自分で作る。
    vi /etc/rc.d/init.d/tomcat
    	#!/bin/sh
    	#
    	# 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
    	#
    	case "$1" in
    	'start')
    		sudo /usr/local/tomcat/bin/catalina.sh start
    		;;
    	'stop')
    		sudo /usr/local/tomcat/bin/catalina.sh stop
    		;;
    	'restart')
    		$0 stop
    		$0 start
    		;;
    	*)
    		echo "Usage: $0 {start|stop|restart}"
    		;;
    	esac
    	exit 0
    
    パーミッション変更
    chmod 755 /etc/rc.d/init.d/tomcat
  • 自動起動設定・ランレベル
    設定ON
    chkconfig tomcat on または chkconfig --add tomcat
    設定確認
    chkconfig --list tomcat
  • 起動・終了
    再起動
    service tomcat restart
    起動
    /usr/local/tomcat/bin/catalina.sh start または service tomcat start
    終了
    /usr/local/tomcat/bin/catalina.sh stop または service tomcat stop
  • オリジナルのJSP、サーブレットを動作させるには
    /usr/local/tomcat/webapps(インストールしたディレクトリ)以下に自分のディレクトリを適当に作ります。
    例えば、/usr/local/tomcat/webapps/oshima というディレクトリを作ります。
    さらに、/usr/local/tomcat/webapps/oshima/WEB-INF というディレクトリを作ります。
    WEB-INF ディレクトリにweb.xmlを作ります。
    web.xmlには、以下のように書きます。
    <?xml version="1.0" encoding="ISO-8859-1"?>
    
    <!DOCTYPE web-app
    	PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
    	"http://java.sun.com/dtd/web-app_2_3.dtd">
    
    <web-app>
    </web-app>
    
    JSP、サーブレットは、WEB-INFディレクトリとweb.xmlファイルがないと動作しません。
    また、最初からインストールされているサンプルのweb.xmlだと動かない場合があるので、 上記のサンプルを参考に設置します。

    apache2/conf/workers2.propertiesに
    [uri:/追加したディレクトリ名/*]
    を追加(最終行でOK)。

    apache、tomcatを再起動します。
    設定を変更したら、必ず再起動します。

    http://www.sample.com/追加したディレクトリ名/ でページが見れます。

    付属のサンプルを見るには、apache2/conf/workers2.propertiesに
    [uri:/jsp-examples/*]
    [uri:/servlets-examples/*]
    を追加。
    また、servletをhttp://www.sample.com/servlet/サーブレット名 で表示するには、自分で設定しないといけない(tomcat4.1辺りから)。
    tomcat/conf/web.xmlのinvoker関連
    	<servlet>
    		<servlet-name>invoker</servlet-name>
    		<servlet-class>
    			org.apache.catalina.servlets.InvokerServlet
    		</servlet-class>
    		<init-param>
    			<param-name>debug</param-name>
    			<param-value>0</param-value>
    		</init-param>
    		<load-on-startup>2</load-on-startup>
    	</servlet>
    と
    	<servlet-mapping>
    		<servlet-name>invoker</servlet-name>
    		<url-pattern>/servlet/*</url-pattern>
    	</servlet-mapping>
    の2箇所がコメントアウトされているので、それを外す。
    または、各WEB-INF/web.xmlに上記2つを<web-app>~</web-app>間に記載する。
    
このエントリーをはてなブックマークに追加