May 31, 2009
[Maven] Continuum と Apache HTTP Server + AJP 経由で呼び出す
Continuum は Jetty を内包しており、自前で Web サーバ機能を提供している。 今回は Apache HTTP Server から AJP 経由で Jetty を呼び出す方法をメモ。 使用した Continuum のバージョンは 1.2.3 で、同梱の Jetty は 6.1.11。
- Continuum
- http://continuum.apache.org/
- Jetty
- http://jetty.mortbay.com/jetty/
設定方法
既に Continuum 1.2.3 がインストールされており、起動可能な状態になっていることが前提。 Continuum がインストールされているディレクトリを $CONTINUUM_HOME と記述する。 実際に設定した環境は Debian Etch + JDK 1.5.0。
Continuum に Jetty の AJP モジュールを組み込む
Continuum に同梱されている Jetty には AJP 用のモジュールが含まれていない。 そのため、別途 Jetty をダウンロードしてモジュールを入手し、組み込む必要がある。
- Jetty 6.1.11
- http://dist.codehaus.org/jetty/jetty-6.1.11/
Jetty の設定変更
$CONTINUUM_HOME/conf/jetty.xml の以下の 2 箇所を変更する。
以下の <Call name="addConnector"> をコメントアウト。
<!-- Use this connector for many frequently idle connections
and for threadless continuations.
-->
<!-- START SNIPPET: jetty_port -->
<!--
<Call name="addConnector">
<Arg>
<New class="org.mortbay.jetty.nio.SelectChannelConnector">
<Set name="host"><SystemProperty name="jetty.host" /></Set>
<Set name="port"><SystemProperty name="jetty.port" default="8080"/></Set>
<Set name="maxIdleTime">30000</Set>
<Set name="Acceptors">2</Set>
<Set name="statsOn">false</Set>
<Set name="confidentialPort">8443</Set>
<Set name="lowResourcesConnections">5000</Set>
<Set name="lowResourcesMaxIdleTime">5000</Set>
</New>
</Arg>
</Call>
-->
<!-- END SNIPPET: jetty_port -->
以下を追記。
<Call name="addConnector">
<Arg>
<New class="org.mortbay.jetty.ajp.Ajp13SocketConnector">
<Set name="port">8009</Set>
</New>
</Arg>
</Call>
変更完了後に Continuum を再起動する。
Apache HTTP Server の設定変更
httpd.conf に以下を追記(実際には、各環境に合わせた /etc/apache2/sites-available 内のファイル)。
変更完了後に Apache HTTP Server を再起動する。<Location "/continuum"> ProxyPass ajp://localhost:8009/continuum Order allow,deny allow from all </Location>
設定変更の確認
http://example.com/continuum に Web ブラウザで接続する。



