JITAKU_SVR_Wiki
tomcatインストール †
tomcatをインストールするにはいくつか付属で必要となるものがある。
- apache
- tomat本体
- java
- apache~tomcatモジュール(Apache Tomcat Connectors またはproxy)
apacheに関しては省略。
tomcatのインストールは非常に簡単なのだが、環境を作るのが非常に面倒。
たとえば、一言で『java』と言ってもたくさんの種類の『java』がある。
今回は『jdk-1_5_0_16-linux-i586.rpm』を使用。
(古いバージョンの物だったので探すのも大変。しかもSUNからOracleに変わり更に大変。最新のものであれば割りと簡単。)
たまたま同じバージョンを求めている人は
http://www.oracle.com/technetwork/java/javasebusiness/downloads/java-archive-downloads-javase5-419410.html#jdk-1.5.0_16-oth-JPR
ここからDL可能。
(事前に登録必要なので注意)
tomcat本体も必ずしも最新版を使うとは限らないので、アーカイブを漁る可能性あり。
今回は『jakarta-tomcat-5.0.28』。これも結構古いものなので頑張って探す。
Apache Tomcat Connectorsはapacheとtomcatをつなぐモジュール。
これもググると結構出てくるのだが、おそらくmod_jkが出てくると思われる。
(古いバージョンにあたると最悪。)
自分も聞いて知っている話なので鵜呑みにしないでほしいが、
mod_jk → mod_jk2 → mod_jk
という流れで開発が進んでいる。
初代のmod_jkからmod_jk2に移行することになったものの、mod_jk2はバグが多くて使い物にならないのでmod_jk2の開発は終了し、元々のmod_jkをその後開発し続けているので、
一言にmod_jkと言ってもどの時代に当たるかでかなり大変。
なので、自分が使用するバージョンがいつの時代のものなのか調べる必要がある。
ただし、今回はmod_jkを使用せず、proxyモジュール(mod_proxy_ajp)を使用。
javaをインストールする †
上記でDLしたソースファイルを使用してインストールする。
元々バイナリファイルなので、これに実行件を与え、rpmコマンドでインストールする。
※ソースファイルのパス → /usr/local/src/
# cd /usr/local/src/
# chmod +x jdk-1_5_0_16-linux-i586-rpm.bin
# ./jdk-1_5_0_16-linux-i586-rpm.bin
# rpm -ivh jdk-1_5_0_16-linux-i586.rpm
# cd /usr/java/jdk1.5.0_16/bin/
# ./java -version
java version "1.5.0_16"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_16-b02)
Java HotSpot(TM) Client VM (build 1.5.0_16-b02, mixed mode, sharing)
tomcatをインストールする †
# cd /usr/local/src
# tar zxvf jakarta-tomcat-5.0.28.tar.gz
# cp -pr jakarta-tomcat-5.0.28 /var/www/html/tomcat
(apacheのDocumentRootにtomcatという名前で置く)
tomcatのインストールはこれで完了。
実際に起動するかを確認。
# cd /var/www/html/tomcat/bin
# sh startup.sh
The JAVA_HOME environment variable is not defined
This environment variable is needed to run this program
このままだと上記のように怒られるので手を入れてあげる。
意味はそのままで、JAVA_HOMEのパスが通っていない、もしくはインストールされてないと言っている。
javaのインストールは完了しているので、パスが通っていないことになる。
パスの通し方
# vi /root/.bash_profile
(最終行辺りに追加)
JAVA_HOME=/usr/java/jdk1.5.0_16
PATH=$JAVA_HOME/bin:$PATH
export JAVA_HOME PATH
※注意
もし、デフォルトでほかのバージョンのjava等がインストールされている場合、元々入っているjavaのパスが強い可能性がある。
その場合はそのパスが書かれている箇所より上、もしくはそちらのjavaのパスを切ってあげる。
# cd /var/www/html/tomcat/bin
# ./startup.sh
Using CATALINA_BASE: /var/www/html/tomcat
Using CATALINA_HOME: /var/www/html/tomcat
Using CATALINA_TMPDIR: /var/www/html/tomcat/temp
Using JAVA_HOME: /usr/java/jdk1.5.0_16
# ps auwwx | grep tomcat
root 3860 1.7 3.7 268732 39128 pts/0 Sl 07:23 0:04 /usr/java/jdk1.5.0_16/bin/java -Djava.endorsed.dirs=/var/www/html/tomcat/common/endorsed -classpath /usr/java/jdk1.5.0_16/lib/tools.jar:/var/www/html/tomcat/bin/bootstrap.jar:/var/www/html/tomcat/bin/commons-logging-api.jar -Dcatalina.base=/var/www/html/tomcat -Dcatalina.home=/var/www/html/tomcat -Djava.io.tmpdir=/var/www/html/tomcat/temp org.apache.catalina.startup.Bootstrap start
# netstat -an | grep 8080
tcp 0 0 :::8080 :::* LISTEN
※tomcatはデフォルトで8080ポートでListenする。
apacheを経由させず、直でtomcatを叩いて確認して、表示されることを確認。
http://localhost:8080
もし、ステータスエラーなどが出て場合にはどこか間違っているので再度確認してみる。
apache経由でtomcatにアクセスさせる †
上記で書いてきたtomcatインストール、環境設定では、必ず通信ポートを指定する必要がある。
これだと非常に勝手が悪いので、apacheのモジュールを使用してapacheからtomcatへ自動で流れるようにしてあげる。
イメージ
この流してあげるというのがいくつか方法があり、冒頭でも記述したが、proxyかmod_jkを使うことで可能になる。