mod_jkによるApache-GlassFish連携環境の構築GlassFishとApacheの連携mod_jkによるApache-GlassFish連携環境を構築する機会があったのでここに紹介したい。mod_jkによってApacheとTomcatを連携させるのは良く知られているが、ApacheとGlassFishでも同じことが可能である。ただし、やることは非常に多く難易度は高い。ネタ元は↓。
<Amy Roh's Blog> Apache-GlassFish連携に必要なものApache-GlassFish連携環境の構築はFedora Core 5にて行った。必要なものは以下である。
<Tomcat 5.5>
<Tomcat Connectors(mod_jk) Downloads>
<mod_jk 1.2.21> mod_jkのインストール1.mod_jkモジュールの配置ダウンロードしたmod_jk(mod_jk-1.2.21-apache-2.2.x-linux-i686.so)をmod_jk.soにリネームして/etc/httpd/modulesに配置する。
2.httpd.confファイルの変更
# mod_jk LoadModule jk_module modules/mod_jk.so <IfModule mod_jk.c> Include conf/mod_jk.conf </IfModule> # Basic auth <Location "/"> AuthType Basic AuthName "Enter username and password" AuthUserFile /etc/httpd/.htpasswd AuthGroupFile /dev/null Require valid-user </Location>3..htpasswdファイルの作成 以下のコマンドを実行する。追加したユーザ名は.htpasswdファイルを参照すれば確認できる。
# htpasswd -c /etc/httpd/.htpasswd ユーザ名ここでユーザ名はBASIC認証を行うユーザ名である。
4.mod_jk.confファイルの作成
JkWorkersFile /etc/httpd/conf/workers.properties JkLogFile /var/httpd/logs/mod_jk.log JkLogLevel debug JkLogStampFormat "[%a %b %d %H:%M:%S %Y] " JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories JkRequestLogFormat "%w %V %T" JkMount /*.jsp ajp135.workers.propertiesファイルの作成 /etc/httpd/confディレクトリにworkers.propertiesファイルを以下の内容で作成する。
worker.list=ajp13 worker.ajp13.port=8009 worker.ajp13.host=localhost worker.ajp13.type=ajp13 worker.ajp13.cachesize=10 GlassFishへのAJPコネクタモジュールのインストール1.tomcat-ajp.jarの配置別途インストール済みのTomcatからGlassFishで利用するために、以下のjarファイルを(Tomcatインストールディレクトリ)/server/libから(GlassFishインストールディレクトリ)/libにコピーする。
<Apache Jakarta Project>
2.AJPコネクタモジュールの設定
$ asadmin create-jvm-options -Dcom.sun.enterprise.web.connector.enableJK=80093.glassfish-jk.propertiesファイルの作成 (GlassFishインストールディレクトリ)/domains/(ドメイン名)/configディレクトリに以下の内容でglassfish-jk.propertiesファイルを作成する。これをやらないとREMOTE_USER情報がGlassFishに渡されない。
tomcatAuthentication=false4.glassfish-jk.propertiesファイルの設定 GlassFishのasadminコマンドで以下のJVMオプションを追加する。
$ asadmin create-jvm-options -Dcom.sun.enterprise.web.connector.enableJK.propertyFile =(GlassFishインストールディレクトリ)/domains/(ドメイン名)/config/glassfish-jk.properties5.GlassFishの再起動 これでApache-GlassFish連携が可能となり、GlassFishにREMOTE_USER情報が渡される。 (2008/01/09)
Copyright© 2004-2022 モバイル開発系(K) All rights reserved.
[Home]
|