mod_jkインストールメモ

Apache httpdTomcat をつなぐ

このエントリは2006/11/08の再掲です

Apache httpdTomcat(というよりJ2EEサーブレットコンテナ)のプロクシにするには、mod_jkモジュールをApacheに追加します。もし再設定する必要があると、またドキュメントを見ながら過去の設定を思い出すのが面倒なので、書いておくことにしました。

mod_jkバイナリを仮に/etc/httpd/modules/にインストールし、httpd.confに

Include conf.d/*.conf 

という宣言があるとすると、以下のファイルを作成してhttpdをリスタートします。
/etc/httpd/conf.d/mod_jk.conf

# Note : The jk log level [debug/error/info]

LoadModule    jk_module  /etc/httpd/modules/mod_jk.so
JkWorkersFile /etc/httpd/conf.d/workers.properties
JkLogFile     /var/log/mod_jk.log
JkLogLevel    info
JkLogStampFormat "[%a %b %d %H:%M:%S %Y] "
JkOptions     +ForwardKeySize +ForwardURICompat -ForwardDirectories
JkRequestLogFormat     "%w %V %T"

JkMount  /servlets-examples/* worker1
JkMount  /jsp-examples/* worker1

/etc/httpd/conf.d/workers.properties

# Define 1 real worker using ajp13
worker.list=worker1

# Set properties for worker1 (ajp13)
worker.worker1.type=ajp13
worker.worker1.host=localhost
worker.worker1.port=8009
worker.worker1.lbfactor=50
worker.worker1.cachesize=10
worker.worker1.cache_timeout=600
worker.worker1.socket_keepalive=1
worker.worker1.recycle_timeout=300

Linuxmod_jkをソースからmakeしようとすると、Apache開発者用ライブラリを要求されて面倒だったのですが、ためしにApacheサイトからダウンロードしたバイナリをそのままコピーすると、問題なく動きました。

ちなみに、mod_jkを用いる方法はApacheは2.0代までの方法で、2.2代ではmod_proxyという同じことを行うモジュールが準備されているそうです。