2008年11月17日

Apache2.2 & PLESK8 & Tomcat6 な特殊環境にて

VPSサーバーでTomcatを動かしたい。その設定方法を考えてみた覚書。
GUIで複数のドメインを管理するに便利なPLESKですが、ちょっと中を弄るのは怖いですね。今回、VPSでCentOS5のインストールされた環境下でTomcatを動かしました。PLESKの自動設定を壊さないようするのが最優先で。


1.=======================
JDK6のインストール

http://java.sun.com/javaseよりjdk-6uXX-linux-x64-rpm.bin
/usr/tmp などでダウンロード
# chmod +x jdk-6uXX-linux-x64-rpm.bin
# ./jdk-6uXX-linux-x64-rpm.bin
インストール先
 /usr/java/default (/usr/java/jdk1.6.0_XX)
JAVA_HOME修正 /etc/tomcat5/tomcat5.conf

以下任意で、コマンドラインで使う場合は必須
alternatives --install /usr/bin/java java /usr/java/jdk1.6.0_XX/bin/java 100
alternatives --install /usr/bin/jar jar /usr/java/jdk1.6.0_XX/bin/jar 100
alternatives --install /usr/bin/javac javac /usr/java/jdk1.6.0_XX/bin/javac 100
で alternatives --config java

2.=======================
Tomcat6のインストール

Plesk Control Panel(makeはあるがautoconfがないので)
 Virtuozzo > Manage software packages > Install Package
にてautoconf をインストール(apt-getでいいが)

http://www.atmarkit.co.jp/fjava/rensai4/safetomcat_01/safetomcat_01_1.html
を参考にしてTomcat6をインストール
インストール先:  /usr/local/tomcat6 とした。

Permissionをすべてtomcatにする
# chown -R tomcat. /usr/local/tomcat6

新規作成: /etc/rc.d/init.d/tomcat (jsvcではわかりにくい)
JAVA_HOME=/usr/java/default
CATALINA_OPTS="-server -Xmx640M -Xms256M" 追加、さらに、
※ 日付を考慮して、
-Duser. language=ja
-Duser.timezone=Asia/Tokyo
※ Tomcat 6.0.18以降は、
-Dorg.apache.jasper.compiler.Parser.STRICT_QUOTE_ESCAPING=false も

起動
# /etc/init.d/tomcat start

3.=======================
ApacheとTomcatのAJP連携設定

Apacheの設定ファイルを変更
/etc/httpd/conf.d/proxy_ajp.conf に設定を追加すればよいが、
VirtualHostをここで定義すると、PleskのVirtualHost設定より
優先されてしまう。
なぜなら、このconf.d内は「*.conf」でロードしており、
Pleskの設定ファイル名が「zz010_psa_httpd.conf」として
最後にロードするようにしてある。
従ってファイル「zzz99_ajp_vhost.conf」を新規作成して
以下のように定義する。

 <VirtualHost XXX.XXX.XXX.XXX:80>
    ServerName hostname.com
    ServerAlias www.hostname.com
    ProxyPass / ajp://localhost:8009/
    ProxyPassReverse / ajp://localhost:8009/
 </VirtualHost>

VirtualHostの場合、Tomcatのserver.xmlも同時に定義。
(コンテキストの設定も)

Tomcatの設定 8080ポートを閉じる(コメント)
 /usr/local/tomcat6/conf/server.xml

再起動
# /etc/rc.d/init.d/httpd stop
# /etc/rc.d/init.d/tomcat stop
# /etc/rc.d/init.d/httpd start
# /etc/rc.d/init.d/tomcat start

4.=======================
MySQLなど (すでにインストール済み 5.0.45を使う)

インストール先
 /usr/share/mysql  (data: /var/lib/mysql)
 
コマンドライン
# mysql -u admin -p
 (パスワードのデフォルトは管理者パスワード)
 (/etc/psa/.psa.shadowに書かれている)
※PLESK管理のDB名ユーザー名とバッティングしないよう
 PleskでもDB名は自由


これでほぼ問題無く稼働中・・・

この記事へのトラックバックURL

http://trackback.blogsys.jp/livedoor/surabaya/52198457