あなたは現在ゲストアクセスを利用しています (ログイン)
アプリケーションサーバ
  • サーバ側でアプリケーション(スクリプト)を実行する部分を切り離し,独立したサーバにしたもの.
  • WEBサーバと同じマシンで実行される場合もあるし,複数のアプリケーションサーバで負荷分散を行なう場合もある.
  • WEBブラウザ <-----> WEBサーバ <-----> アプリケーションサーバ <-----> データベース
  • 授業では WEBサーバに apache2,アプリケーションサーバに tomcat を使用している
  • WEBサーバ(apache)とアプリケーションサーバ(tomcat)の間でやり取りを行なうのが,JKコネクタである.
  • JKコネクタには幾つかバージョンが存在するが,授業では mod_jk を使用する.

apacheから tomocatへリクエストが渡される手順 (通常のCGIやPHPよりはかなり複雑)
  1. apachemod_jk.conf をみて, JkMount で指定された URL をコンテキストとして tomcat へ渡す.
  2. tomcat/usr/local/tomcat/webappコンテキスト名のディレクトリが在るかどうかを検索する.
  3. ディレクトリがなければ,/usr/local/tomcat/conf/Catalina/localhost/コンテキスト名.xml を検索する
  4. /usr/local/tomcat/conf/Catalina/localhost/コンテキスト名.xml の内容に従って,実際にコンテキストのあるディレクトリを決定する.
  5. コンテキストを実行し(ServletとJSPでは実行の仕方が違う),結果を apacheに返す.
    注) /usr/local/tomcat/work/Catalina/localhost には作業用ディレクトリが作成される.



連携モジュール: JKコネクタ (Tomcatと Apacheの連携を取るためのモジュール)

■ ファイルのダウンロード
  • tomcat-connectors-1.2.32-src.tar.gz
  • 学内 FTP: tomcat関連
■ モジュールのコンパイルとインストール
     # zcat tomcat-connectors-1.2.32-src.tar.gz | tar xfv -
     # cd tomcat-connectors-1.2.32-src/native
     # ./buildconf.sh
     # ./configure --with-apxs=/usr/local/apache/bin/apxs
     # make
     # make install
    
    
■ モジュールの設定
     # mkdir /usr/local/tomcat/conf/jk/
     # chmod a+rx /usr/local/tomcat/conf/jk/
     
ワーカファイル workers.properties を /usr/local/tomcat/conf/jk にコピーする




Tomcatと Apacheの設定

Apacheの設定
  • /usr/local/apache/conf/httpd.conf の最後の方の下記(赤字)の一行を有効にする. もしなければ書き足す.
  • Include "/usr/local/tomcat/conf/mod_jk.conf"
  • mod_jk.so の設定ファイル /usr/local/tomcat/conf/mod_jk.conf を作成する
■ Tomcatの設定
  • /usr/local/tomcat/conf/server.xml で 8080ポートを使用しないように変更する.
  • 変更箇所は server.xml の赤字の部分.ただし,useBodyEncodingForURI="true" はPOSTで漢字コードが化けないようにするためのもの
■ Tomcatと Apacheの再起動
     # /etc/init.d/tomcat stop
     # /etc/init.d/apache restart
     # /etc/init.d/tomcat start
     


動作の確認
最終更新日時: 2012年 03月 28日(水曜日) 16:05
ナビゲーション をスキップする

ナビゲーション


あなたは現在ゲストアクセスを利用しています (ログイン)