Resinのインストール

ResinもTomcatと同じ、サーブレットを扱うためのサーバである。これらの2つを比較してみると、まずResinは処理速度がTomcatよりも3倍速いと言われている。安定性を考えてもResinのほうがTomcatよりも安定している。また、Tomcatがフリーであるのに対し、Resinは非商用利用なら無償、商用利用なら有償となっている。どちらも気軽に個人利用できるため、最近はresinのほうが人気があるようだ。

 ResinとTomcatは、動作においてそれほど変わりはない。Resin単独で動かす場合はポート番号をつけてアクセスするが、Apacheにモジュールを組み込むことで80ポートとしてアクセスさせることもできる。その場合はコンパイル作業が必要になってくる。また、Tomcatと同じくJDKが必要になってくるので、予めインストールしておく。

Resin
DefaultPort : 6802(servlet)

1)J2SDKをインストールしていない場合はインストールを行う。インストール後、環境変数を設定する。以下はBASHシェルの場合。

# vi /etc/bashrc
export JAVA_HOME=/usr/local/j2sdk
export RESIN_HOME=/usr/local/resin

# source bashrc

2)resinのアーカイブを(1)で設定した環境変数$RESIN_HOMEの場所に展開、名前変更する。

# cd /usr/local/
# tar zxvf resin-2.1.3.tar.gz
# mv resin-2.1.3 resin
# cd resin/

3)resinを起動する。起動後はブラウザ上で8080ポートにアクセスし、resinのデフォルトホームページが出力されることを確認する。またDemoをクリックし、JSPプログラムが正常に実行されることを確認する。確認したらresinを停止させる。

# bin/httpd.sh start
http://localhost:8080/ で動作確認
# bin/httpd.sh stop

4)Apacheにモジュールを組み込む場合は、resinのインストールディレクトリでmod_cauchoのコンパイルを行う。

# ./configure --with-apache=/usr/local/apache \
--with-java-home=$JAVA_HOME --with-openssl=/usr/local/openssl
# make
# make install

5)Apacheのインストールディレクトリ以下のlibexec以下に「mod_caucho.so」ができていることを確認し、Apacheの設定ファイルを書き換える。

# vi /usr/local/apache/conf/httpd.conf
LoadModule caucho_module libexec/mod_caucho.so
   AddModule mod_caucho.c
   <IfModule mod_caucho.c>
      Alias /images/ "/usr/local/resin/doc/images/"
      CauchoConfigFile /usr/local/resin/conf/resin.conf
</IfModule>

※デフォルトではhttpd.confの一番下にLoadModuleとAddModuleの2つが追加されているが、このままだと起動時に、既にモジュールが組み込まれているという旨の警告が出る。回避するにはAddModule行を削除(コメント化)するか、またはhttpd.confの上のほうで、他のLoadModuleとAddModuleを行っている部分に追加するようにする(「ClearModuleList」を行っているため)。

6)もしも8080ポートを塞ぎたい場合は、resinの設定ファイルを書き換える必要がある。以下のように8080ポートを使用している部分をコメントにする。

# vi conf/resin.conf
<!-- the http port -->
<!--<http port = '8080'/>-->

7)resinを起動し、Apacheを起動させる(順番はどちらでもよい)。この後「http://localhost/index.xtp」にアクセスして、ブラウザ上に(3)で確認したのと同じ画面が出力されることを確認する。

# /usr/local/resin/bin/httpd.sh start
# /usr/local/apache/bin/apachectl start
http://localhost/index.xtp で動作確認

もし名前ベースのVirtualHostで、ワイルドカードのドメイン(ホスト名の部分にどんな文字列を入れてもアクセス可能なドメイン名)に対応させるには、VirtualHostディレクティブ内で、ServerAlias指示子を使うことができる。

NameVirtualHost *
<VirtualHost *>
DocumentRoot /home/user/www
ServerName www.mydomain.ne.jp
ServerAlias mydomain.ne.jp *.mydomain.ne.jp
</VirtualHost>

8)必要に応じて、自動起動の設定を行う。基本的に起動スクリプト「/usr/local/resin/bin/httpd.sh」がRPM系Linuxのchkconfigに対応しているので、init.dの下にリンクを張ってサービスをONにすればよい。

# cd /etc/rc.d/init.d
# ln -s /usr/local/resin/bin/httpd.sh resin
# chkconfig --add resin
TOP OF PAGE