JBoss 3.2 - Apache 2.0 の連携

失敗

バイナリ形式の JK2 コネクタを使用して、JBoss と Apache の連携させようとしたところ、ものの見事に失敗。

何度繰り返しても、ブラウザは『ページを表示できません。』と表示するばかり。 結局、ソースコードのコンパイルからはじめました。

環境

このレポートは、以下の環境について記述したものです。

OS SUSE Linux 9.1
AP サーバ JBoss 3.2.6
Web サーバ Apache 2.0.52
接続モジュール JK 2 2.0.4 (ソースコード版)

解決策

JK2 ソースコードを使用して、JBoss と Apache を連携させます。

(1) JK2 のコンパイル

まず、JK2 のソースファイル (jakarta-tomcat-connectors-jk2-src-current.tar.gz) を解凍します。

tar -zxvf jakarta-tomcat-connectors-jk2-src-current.tar.gz

解凍後、コンパイルします。

cd jakarta-tomcat-connectors-jk2-2.0.4-src/jk/native2
./configure --with-apxs2=/usr/local/apache2/bin/apxs
make

インストールします。

make install

(2) mod_jk2 を Apache のモジュール・ディレクトリにコピー

コンパイルした JK2 モジュールを Apache のモジュール・ディレクトリにコピーします。

cp ../build/jk2/apache2/mod_jk2.so /usr/local/apache2/modules

(3) http.conf の修正

Apache の httpd.conf を修正し、JK2 モジュールを組み込みます。

[httpd.conf - 以下を追加]
LoadModule jk2_module modules/mod_jk2.so

(4) workers2.properties の作成

JK2 の設定ファイルである workers2.properties を作成します。

[workers2.properties - 新規作成]
[logger.file:0]
level=ERROR
file=/usr/local/apache2/logs/jk2.log

[channel.socket:localhost:8009]
info=Ajp13 forwarding over socket

[uri:/*]

[status:]

[uri:/jkstatus/*]
group=status:

[shm:]
disabled=1

(5) workers2.properties を conf ディレクトリにコピー

作成した workers2.properties を <APACHE_HOME>/conf ディレクトリに配置します。

cp workers2.properties /usr/local/apache2/conf

補足

■ Apache から JBoss へ転送するリクエストの制御方法

Apache から JBoss へ転送するリクエストは workers2.properties の [uri:xxx] で指定します。

[workers2.properties - リクエスト制御の例]
# (例1) 全てのリクエストを JBoss に転送します。
[uri:/*]

# (例2) aaa/以下の全てのリクエストを JBoss に転送します。
[uri:/aaa/*]

# (例3) JSPへのリクエストを JBoss に転送します。
[uri:/*.jsp]

# (例4) Strutsへのリクエストを JBoss に転送します。
[uri:/*.do]

関連レポート

コメント

コメント投稿
(非公開)
     « アイコン一覧 »
(必須)

作成日:2004/12/26
更新日:2004/12/26