Apache2.2 Tomcat6 連携

 Apache2.2 コンパイル DSO(DynamicSharedObjects)
# cd /tmp
# wget http://ftp.riken.jp/net/apache//httpd/httpd-2.2.21.tar.gz
# tar httpd-2.2.21.tar.gz
# cd httpd-2.2.21
# ./configure --enable-proxy=shared --enable-proxy_ajp=shared
# make
# make install
phpも使用する場合
./configure --enable-proxy=shared --enable-proxy_ajp=shared --enable-so

従来"./configure"した際httpdに組み込まれるモジュールを "static" にリンクするのではなく "Dynamic" にリンクすることで、httpdのサイズを小さくする技術です。

httpd は必要なときだけ、各モジュールのライブラリをロードするため、実行時に必要になるメモリの節約などに効果あります。

また、Apache のインストール後に、PHPなどモジュールを追加するときなどに、インストールが簡単になるなどのメリットもあります。

 コンパイル built-in module
# cd /tmp
# wget wget http://ftp.kddilabs.jp/infosystems/apache/httpd/httpd-2.2.21.tar.gz
# tar zxvf httpd-2.2.21.tar.gz
# cd httpd-2.2.21
# ./configure --enable-proxy --enable-proxy_ajp --enable-so
# make
# make install


 モジュールの確認
# httpd -l
コンパイル時にモジュールを組み込むことによりレスポンスを若干向上できる
httpdが大きくなるのが欠点


 /usr/local/apache2/conf/httpd.conf の編集
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
コメントアウトになっていたらはずして有効にする。


<Location /jsp-examples/>
ProxyPass ajp://localhost:8009/jsp-examples/
</Location>

<Location /servlets-examples/>
ProxyPass ajp://localhost:8009/servlets-examples/
</Location>


 動作確認
Tomcat起動後

http://localhost:8080/hoge/

http://localhost/hoge/

同じものが見えればOK
参考
でじたま日記2.1 Apache2.2におけるBasic認証
Apache2.2にしたらBasic認証がスゲー変わってる・・・。
気の向くままに・・・Apache2.2+Tomcat5.5


更新 2012.12.12