TOP » Apache HTTP Server で Web サーバー構築 » Apache 1.3 » mod_jk を使った Tomcat との連携

mod_jk を使った Tomcat との連携

mod_jk コネクターを使って Apache と Tomcat を連携する方法を紹介します。
Apache と Tomcat を連携するためにはあらかじめ Tomcat のインストールが完了している必要があります。
mod_jk は Apache JServ プロトコルのバージョン 1.3(ajp 13)を使って通信します。
Apache Tomcat から mod_jk のソースファイルをダウンロードして Apache の DSO モジュールとしてインストールする方法を紹介します。

mod_jk のダウンロードとビルド

mod_jk のソースファイルを Apache Tomcat からダウンロードします。

# wget -P /usr/local/src http://www.apache.org/dist/tomcat/tomcat-connectors/jk/source/jk-1.2.18/tomcat-connectors-1.2.18-src.tar.gz

ダウンロードしたソースファイルを展開して mod_jk のバイナリーを生成します。

# cd /usr/local/src
# tar xzf tomcat-connectors-1.2.18-src.tar.gz
# cd tomcat-connectors-1.2.18-src/native
# ./configure --with-apxs=/usr/local/httpd/bin/apxs
# make
# cp ./apache-2.0/mod_jk.so /usr/local/httpd/modules

Apache の設定

mod_jk モジュールを読み込むように Apache の設定ファイル httpd.conf を編集して以下の行を追加します。

# vi /usr/local/httpd/conf/httpd.conf
/usr/local/httpd/conf/httpd.conf
# Load mod_jk module
LoadModule    jk_module  modules/mod_jk.so
# Where to find workers.properties
JkWorkersFile /usr/local/httpd/conf/workers.properties
# Where to put jk logs
JkLogFile     /usr/local/httpd/logs/mod_jk.log
# Set the jk log level [debug/error/info]
JkLogLevel    info
# Select the log format
JkLogStampFormat “[%a %b %d %H:%M:%S %Y] “
# JkOptions indicate to send SSL KEY SIZE,
JkOptions     +ForwardKeySize +ForwardURICompat -ForwardDirectories
# JkRequestLogFormat set the request format
JkRequestLogFormat     “%w %V %T”
# Send servlet for context /examples to worker named worker1
JkMount  /servlets-examples/* ajp13
# Send JSPs  for context /examples to worker named worker1
JkMount  /jsp-examples/*.jsp ajp13

mod_jk プログラムの設定ファイル workers.properties を Apache の conf ディレクトリにコピーします。

# cp ../conf/workers.properties /usr/local/httpd/conf

コピーした workers.properties を以下のように編集します。

# vi /usr/local/httpd/conf/workers.properties
/usr/local/httpd/conf/workers.properties
36 行目辺り
#
# workers.tomcat_home should point to the location where you
# installed tomcat. This is where you have your conf, webapps and lib
# directories.
#
workers.tomcat_home=/usr/local/tomcat

#
# workers.java_home should point to your Java installation. Normally
# you should have a bin and lib directories beneath it.
#
workers.java_home=/usr/local/jdk

#
# You should configure your environment slash… ps=\ on NT and / on UNIX
# and maybe something different elsewhere.
#
ps=/

以下省略

Apache と Tomcat の再起動

Tomcat、Apache の順で再起動します。

# /etc/rc.d/init.d/tomcat restart
# /etc/rc.d/init.d/httpd restart

mod_jk の動作確認

Tomcat の 8080 番ポートで動作していたサーブレットや jsp のサンプルアプリケーションがの正しく動作するか確認を行います。
ウェブブラウザを使って http://192.168.0.2/servlets-examples/servlet/HelloWorldExample のようにアクセスして 80 番ポート(Apache が動作するポート番号)でサンプルアプリケーションが動作することを確認します。
またログファイルには以下のようなログが記録されます。

# cat /usr/local/httpd/logs/mod_jk.log

[Tue Sep 12 18:59:28 2006] ajp13 192.168.0.2 0.004016

カテゴリー
Fedora のインストール
ネットワーク設定
OpenSSH で SSH サーバー構築
NTP で時刻情報サーバー構築
Apache HTTP Server で Web サーバー構築
MySQL でデーターベースサーバー構築
PostgreSQL でデーターベースサーバー構築
PHP で Web アプリケーションサーバー構築
qmail でメールサーバー構築
Samba でファイルサーバー構築
BIND でネームサーバー構築
Tomcat で Web アプリケーションサーバー構築
ProFTPD で FTP サーバー構築
システム設定
CMS でサイト構築
snort でネットワーク進入探知システム構築
ライブラリのインストール