mod_jkでのApacheとtomcatの連携
いつもはmod_proxy_ajpを使って連携してたけど、mod_jkで連携する必要が有ったのでメモ。(mod_proxy_ajp使うとtomcatとapache再起動したとき、最初の何回かリクエストが正しく処理されない事があった。)
[環境]
1.mod_jkのインストール
こちらからtomcat-connectors-1.2.26-src.tar.gzをダウンロードし、解凍後、コンパイル、インストールする。
$ wget http://www.meisei-u.ac.jp/mirror/apache/dist/tomcat/tomcat-connectors/jk/source/jk-1.2.26/tomcat-connectors-1.2.26-src.tar.gz $ tar xvf tomcat-connectors-1.2.26-src.tar.gz $ cd tomcat-connectors-1.2.26-src/native $ ./configure --with-apxs=/usr/sbin/apxs $ make $ make install
※/usr/sbin/apxsにapxs(APacheの拡張機能-eXtenSion)が無い場合は
yum -y install httpd-devel
でインストールする。
2.mod_jkの設定
/etc/httpd/conf.d/tomcat.conf
conf.d/*.confファイルは起動時に読み込まれる。(conf/httpd.confに"Include conf.d/*.conf"と書いてある場合)
LoadModule jk_module modules/mod_jk.so <IfModule mod_jk.c> JkWorkersFile /etc/httpd/conf/workers.properties JkLogFile /var/log/httpd/mod_jk.log JkLogLevel warn JkMount /*/* worker1 </IfModule>
/etc/httpd/conf/workers.propertiesファイルを作成する。
worker.list=worker1 worker.worker1.type=ajp13 worker.worker1.host=localhost worker.worker1.port=8009 worker.worker1.lbfactor=50