2004-05-05:apache 1.3.x + tomcat 5.0.x + mod_jk2 on Vine Linux

apache の 1.3 系列と tomcat を mod_jk2 を使って連携させる話題。
だいぶ apache2 が流行ってしまって、1.3 系列を扱った話題が世間的に少ないと思ったので、あまのじゃくに書いてみました。それだけ。
そんなにおもしろいもんではないです 🙂

お役立ちリンク

ページ内リンク


apache のインストール

DSO 版な apache

mod_jk2 を apxs で入れるので、apache を DSO 版で入れておく。
configure のオプションに –enable-module=so を加えればよい。
わたしの場合、手元にすでに DSO な apache_1.3.29 があるので、なにもせず。:-)

ものすごくてきとーに作業内容を書くとこんな感じかしら。

./configure --enable-module=so
make
sudo make install
sudo vi /usr/local/apache/conf/httpd.conf
sudo /usr/local/apache/bin/apachectl start

tomcat のインストール

J2SE のインストール

とむねこ(tomcat)のインストールの前に java 環境を入れる。
java.sun.com から 1.4.2 な J2SE のバイナリをダウンロード。
わたしは /usr/local/j2sdk1.4.2_04/ にインストールした。

.zshrc に以下のような設定をいれておく。

export JAVA_HOME=/usr/local/j2sdk1.4.2_04
export PATH=\$PATH:\$JAVA_HOME/bin
export CLASSPATH=.:\$JAVA_HOME/lib/tools.jar

tomcat のインストール

jakarta.apache.org からバイナリをもらってくる。
執筆時点では jakarta-tomcat-5.0.19.tar.gz が最新だった。
/usr/local/ 以下に展開。
ディレクトリ名にバージョンが入って長いので、短めの名前にシンボリックリンク。

ln -s /usr/local/jakarta-tomcat-5.0.19 /usr/local/tomcat5

とりあえず起動してみる。わたしの手元では www ユーザー権限で立ち上げている。

sudo -u www /usr/local/tomcat5/bin/startup.sh 

http://localhost:8080/ でとむねこが出てくるのを確認。


mod_jk2 のインストール

apr のインストール

mod_jk2 のインストールに apr(Apache Portable Runtime) が要求されるので、インストールする。
apr.apache.org から apr と apr-util のソースをもらってきて make。
執筆時点での最新は 0.9.4。

cd /usr/local/src/
tar xzf apr-0.9.4.tar.gz
cd apr-0.9.4/
./configure
make
sudo make install

cd /usr/local/src/
tar xzf apr-util-0.9.4.tar.gz
cd apr-util-0.9.4/
./configure
make
sudo make install

/usr/local/apr 以下にいろいろ入る。
一応 /etc/ld.so.conf に /usr/local/apr/lib を追加して sudo /sbin/ldconfig しておくが、この作業が必要なのかどうかはよくわかってない (^^;

mod_jk2 のインストール

jakarta.apache.org からソースをもらってくる。
執筆時点での最新は jakarta-tomcat-connectors-jk2-src-2.0.4.tar.gz。

cd /usr/local/src/
tar xzf jakarta-tomcat-connectors-jk2-src-2.0.4.tar.gz
cd jakarta-tomcat-connectors-jk2-2.0.4-src/
cd jk/native2/
./configure --with-apxs=/usr/local/apache/bin/apxs \
            --with-apr=/usr/local/src/apr-0.9.4 \
            --with-apr-util=/usr/local/src/apr-util-0.9.4
make
sudo cp ../build/jk2/apache13/mod_jk2.so /usr/local/apache/libexec/

mod_jk2.so を読むように apache の httpd.conf を編集し、workers2.properties を作って、tomcat のポートや url の設定をする。

[/usr/local/apache/conf/httpd.conf]
  LoadModule jk2_module libexec/mod_jk2.so
  AddModule mod_jk2.c

  <IfModule mod_jk2.c>
    JkSet config:file /usr/local/apache/conf/workers2.properties
  </IfModule>

[/usr/local/apache/conf/workers2.properties]
  [shm:]
  disabled=1
  [channel.socket:localhost:8009]
  [uri:/servlets-examples/*]

workers2.properties の 8009 ポートというのは、tomcat の設定ファイルの server.xml (/usr/local/tomcat5/conf/server.xml とか)にある "Coyote/JK2 AJP 1.3 Connector" で設定されているポート。

設定ファイルができたら tomcat と apache を再起動。

sudo /usr/local/apache/bin/apachectl stop
sudo -u www /usr/local/tomcat5/bin/shutdown.sh
sudo -u www /usr/local/tomcat5/bin/startup.sh
sudo /usr/local/apache/bin/apachectl start

http://localhost/servlets-examples/ が無事見れたらおしまい。