連携
開発だけという意味合いであればWindows(開発クライアント)で、ApacheとTomcatを連携させる必要は無いが、mod_jkがどのバージョンでちゃんと動くかとか、そっち方面の検証も含めてWindowsの開発クライアント側も、二つを連携させるようにしてみた。
もっとも今、Linuxが環境構築中だから、とりあえず、そっちにどのmod_jkを入れてもらうかっていうのも指示しないといけないからなんだけどね。
まあ、このバージョンの選択すら、phialには悩みどころナワケで。
今回試したのは、Apache2.0.52+Tomcat5.5、WindowsXP。
使ったmod_jkはmod_jk-1.2.14-apache-2.0.54.so。
ダウンロードしたのはここ
(http://www.apache.org/dist/tomcat/tomcat-connectors/jk/binaries/win32/jk-1.2.14/)
悩んだのは、やっぱりmod_jkのバージョンと、いろいろあるらしいhttpd.confの書き方。
どのサイトを見ても、違くて悩む悩む。
よく見たらmod_jk2を使っていたり、Apacheが1.3系だったりする。
ちょっとバージョンが違うと構造が違うのか、はたまた私のやり方が悪いのか。
困ったもんだが。一応上手くいった手順だけ書いておこうかな。
Apacheのインストール先が「C:\usr\Apache2」、Tomcatのインストール先が「C:\usr\Tomcat5.5」ってディレクトリだと思って見ること。
1.mod_jkの配置。
ダウンロードした「mod_jk-1.2.14-apache-2.0.54.so」を「mod_jk.so」にリネームして、c:\usr\Apache2\modules内に配置。*.soファイルがたくさん並んでいるところね。
2.http.confの書き換え
c:\usr\Apache2\conf\httpd.confってファイルの末尾に、次の一文を加える。別に末尾じゃなくてもいいみたいだけど、私は末尾じゃないと分からんなるので。
Include "c:\usr\Apache2\conf\mod_jk.conf"
3.mod_jk.confを作る。
「mod_jk.conf」ってファイルを作って、テキストエディタなんかで開いて、その中身をこんな感じに記述。
LoadModule jk_module modules/mod_jk.so
JkWorkersFile "c:\usr\Apache2\conf\workers.properties"
JkLogFile "c:\usr\Apache2\logs\mod_jk.log"
JkLogLevel warn
JkMount /*.jsp worker1
JkMount /servlets-examples/* worker1
JkMount /jsp-examples/* worker1
JkMount /workspace/* worker1
JkMount /xxxx/* worker1
4.workers.propertiesを作る。
「workers.properties」ってファイルを作って、テキストエディタなんかで開いて、その中身をこんな感じに記述。
worker.list=worker1
worker.worker1.port=8009
worker.worker1.host=localhost
worker.worker1.type=ajp13
worker.worker1.lbfactor=1
5.ポート8080を無効にする。
C:\usr\Tomcat 5.5\conf\server.xmlを開いて、
。。。とかなんとかってなってるところがあるので、ここをコメントアウトする。
<!--
-->
これでOK。のはず。
ここまで出来たら、Tomcat→Apacheの順に起動させたらちゃんと動くはず。はず。。。
Tomcatで指定しているウェブアプリケーションが、8080のポート指定無し「http://localhost/webaps/」で起動したらちゃんと出来てるってことみたい。
#もうつながったらいっか、、みたいな気分になってきた。