mod_jkインストールメモ
このエントリは2006/11/08の再掲です
Apache httpdをTomcat(というより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
Linuxでmod_jkをソースからmakeしようとすると、Apache開発者用ライブラリを要求されて面倒だったのですが、ためしにApacheサイトからダウンロードしたバイナリをそのままコピーすると、問題なく動きました。
ちなみに、mod_jkを用いる方法はApacheは2.0代までの方法で、2.2代ではmod_proxyという同じことを行うモジュールが準備されているそうです。