tomcat の構築環境は以下のパッケージに依存しています。 このため、いつもならソースファイルから構築するのですが、バイナリでもインストールします。
パッケージ | 依存関係 | インストール手段 |
---|---|---|
J2SE (Java 2 Standard Edition) | ソースの提供がない | バイナリ (Linux 用) |
ant | ビルドには J2SE が不可欠 | バイナリ (今回は省略) |
tomcat | ビルドには J2SE,ant が不可欠 | バイナリ (共通) |
mod_jk2 | ビルドには J2SE,ant が不可欠だが、環境の反映が必要 | ソース |
struts (サンプル) | war ファイルなのでバイナリで十分 | バイナリ (共通) |
Tomcat 4, 5 には J2EE (EJB を含まないのでサブセット) が搭載されているため、J2EE はインストールしません。 初版の 3 には搭載されていないため、別途 J2EE のインストールが必要です。
$ su # rpm -i j2sdk-1_4_2_05-linux-i586.rpm 上記の操作により生成された rpm をインストール # exit $ rpm -qa "j2sdk*"
Sun Microsystems, Inc. Binary Code License Agreement for the JAVATM 2 SOFTWARE DEVELOPMENT KIT (J2SDK), STANDARD EDITION, VERSION 1.4.2_X SUN MICROSYSTEMS, INC. ("SUN") IS WILLING TO LICENSE THE SOFTWARE IDENTIFIED BELOW TO YOU ONLY UPON THE CONDITION --- 非常に長いので表示の都合上、省略 : きちんと読みましょう --- For inquiries please contact: Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, California 95054, U.S.A. (LFI#140023/Form ID#011801) Do you agree to the above license terms? [yes or no] yes Unpacking... Checksumming... 0 0 Extracting... UnZipSFX 5.40 of 28 November 1998, by Info-ZIP (Zip-Bugs@lists.wku.edu). inflating: j2sdk-1_4_2_05-linux-i586.rpm Done.
環境変数を設定する $ vi ~/.bash_profileJ2SE が入りました
j2sdk-1.4.2_05-fcs
$ . ~/.bash_profile 内容を反映 tomcat のインストール 2004-09-11 現在、tomcat 5.5.0 がリリースされていますが、 Windows と揃えるため直前のバージョンである 5.0.28 を採用します。 (Windows 2000 だと、5.5.0 がうまく起動しない) $ tar xzf jakarta-tomcat-5.0.28.tar.gz $ su # mv jakarta-tomcat-5.0.28 /usr/local/. # useradd tomcat # bash # cd /usr/local/. /usr/local# chown -R tomcat:tomcat jakarta-tomcat-5.0.28 /usr/local# ln -s jakarta-tomcat-5.0.28 tomcat /usr/local# exit # su - tomcat tomcat$ vi ~/.bashrc
JAVA_HOME=/usr/java/j2sdk1.4.2_05/bin export JAVA_HOME PATH=$PATH:$HOME/bin:/usr/local/sbin:/usr/sbin:/sbin:$JAVA_HOME/bin export PATH
tomcat$ . ~/.bashrc tomcat$ /usr/local/tomcat/bin/startup.sh tomcat を起動
export JAVA_HOME=/usr/java/j2sdk1.4.2_05 export CATALINA_HOME=/usr/local/tomcat
tomcat$ /usr/local/tomcat/bin/shutdown.sh tomcat を停止ここで、 http://サーバ名:8080/ をアクセスすると、tomcat に添付されていたサンプルが表示されます。
Using CATALINA_BASE: /usr/local/tomcat Using CATALINA_HOME: /usr/local/tomcat Using CATALINA_TMPDIR: /usr/local/tomcat/temp Using JAVA_HOME: /usr/java/j2sdk1.4.2_05
tomcat$ tail /usr/local/tomcat/logs/catalina.out ログを表示startup.sh と同じ表示です。
Using CATALINA_BASE: /usr/local/tomcat Using CATALINA_HOME: /usr/local/tomcat Using CATALINA_TMPDIR: /usr/local/tomcat/temp Using JAVA_HOME: /usr/java/j2sdk1.4.2_05
tomcat$ exit
2004/09/08 1:12:57 org.apache.catalina.core.StandardHostDeployer remove 情報: コンテキストパス のWebアプリケーションを削除します 2004/09/08 1:12:57 org.apache.catalina.core.StandardHostDeployer remove 情報: コンテキストパス /manager のWebアプリケーションを削除します 2004/09/08 1:12:57 org.apache.catalina.logger.LoggerBase stop 情報: unregistering logger Catalina:type=Logger,host=localhost 2004/09/08 1:12:57 org.apache.catalina.logger.LoggerBase stop 情報: unregistering logger Catalina:type=Logger 2004/09/08 1:12:57 org.apache.coyote.http11.Http11Protocol destroy 情報: Stopping Coyote HTTP/1.1 on http-8080
jakarta-tomcat-connectors-jk2-2.0.4-src/jk/native2$ cd .. jakarta-tomcat-connectors-jk2-2.0.4-src/jk$ su jakarta-tomcat-connectors-jk2-2.0.4-src/jk# cp -p build/jk2/apache2/mod_jk2.so /usr/local/apache2/modules/. jakarta-tomcat-connectors-jk2-2.0.4-src/jk# cp -p conf/workers2.properties /usr/local/apache2/conf/. jakarta-tomcat-connectors-jk2-2.0.4-src/jk# vi /usr/local/apache2/conf/workers2.properties
../build/jk2/apache2/usr/local/apache2/modules/mod_jk2.so ../build/jk2/apache2/.libs/mod_jk2.so ../build/jk2/apache2/mod_jk2.so <-- これ
workers2.properties に以下を追加jakarta-tomcat-connectors-jk2-2.0.4-src/jk# vi /usr/local/apache2/conf/httpd.confinfo= の行はコメントなので、無くても可。
[uri:/servlets-examples/*] info=Map the whole webapp [uri:/jsp-examples/*] info=Map the whole webapp
httpd.conf に以下を追加jakarta-tomcat-connectors-jk2-2.0.4-src/jk# su - tomcat tomcat$ /usr/local/tomcat/bin/startup.sh tomcat を起動 tomcat$ exit jakarta-tomcat-connectors-jk2-2.0.4-src/jk# /usr/local/apache2/bin/apachectl start apache を起動 ※ tomcat の設定ファイル (server.xml 等) を変更して tomcat を再起動した場合は、apache も再起動します ここで、 http://サーバ名/servlets-examples/index.html http://サーバ名/jsp-examples/index.html をアクセスすると、tomcat に添付されていたサンプルが表示されます。(mod_jk2 経由なので 8080 は使いません)
LoadModule jk2_module modules/mod_jk2.so
パッケージの確認$ su # cp -p ./jakarta-struts-1.2.2/dist/webapps/*.war /usr/local/tomcat/webapps/. ここで、下記のようにアクセスすると、struts に添付されていたサンプル (及びドキュメント) が表示されます。 ※最初のアクセスはコンパイルのため、少し時間がかかります
./jakarta-struts-1.2.2/dist/webapps/struts-blank.war ./jakarta-struts-1.2.2/dist/webapps/struts-documentation.war ./jakarta-struts-1.2.2/dist/webapps/struts-examples.war ./jakarta-struts-1.2.2/dist/webapps/struts-mailreader.war ./jakarta-struts-1.2.2/dist/webapps/tiles-documentation.war
http://サーバ名:8080/struts-blank/ http://サーバ名:8080/struts-documentation/ http://サーバ名:8080/struts-examples/ http://サーバ名:8080/struts-mailreader/ http://サーバ名:8080/tiles-documentation/
/home/who/webapps/hello.jsp$ su ユーザ tomcat になるため root になります # su - tomcat tomcat$ /usr/local/tomcat/bin/shutdown.sh tomcat が起動していたら停止します tomcat$ vi /usr/local/tomcat/conf/server.xml
<html> <head> <title>Hello World!</title> </head> <body> <% out.println("Hello world."); %> </body> </html>
/usr/local/tomcat/conf/server.xml の <Host>...</Host> の中に挿入します。tomcat$ /usr/local/tomcat/bin/startup.sh server.xml を書き換えたので tomcat を起動 tomcat$ exit # exit $ ここで、 http://サーバ名:8080/who/hello.jsp をアクセスすると、 Hello world. が表示されます。
<Context path="/who" docBase="/home/who/webapps" crossContext="false" debug="0" reloadable="true"> </Context>