ブログ   うい・らぶ・だいびんぐ   Cube 別館   flag_uk 英語サイト   ポータル
twitter Twitter でログイン
ホーム   最新ニュース   フォーラム   ダウンロード   写真集   リンク集   お問い合わせ RSS

SmartSection > Linux > Linux Software > Program > CentOS 5 に Tomcat 6 をインストールする

CentOS 5 に Tomcat 6 をインストールする

投稿者: Ken 掲載日: 2010-12-3 (16398 回閲覧)
CentOS 5 に Tomcat 6 をインストールする

Tomcat 6 のダウンロード

Apache Tomcat から最新版をダウンロードする。
2010年12月時点の最新版は 6.0.29 です。
7.0.5 が出ていますが、ここでは 6 系で


# cd /tmp
# wget http://ftp.kddilabs.jp/.../apache-tomcat-6.0.29.tar.gz


Tomcat 6 のインストール


# tar -xzf apache-tomcat-6.0.29.tar.gz
# mv apache-tomcat-6.0.29 /opt/tomcat6


Tomcat を起動するための専用ユーザー tomcat を作成する


# useradd -d /opt/tomcat6 -s /sbin/nologin tomcat
useradd: warning: the home directory already exists.
Not copying any file from skel directory into it.

# chown -R tomcat. /opt/tomcat6 


Tomcat のデーモン化

Apache Commons Daemon を使ってビルドする。


# cp /opt/tomcat6/bin/commons-daemon-native.tar.gz /tmp/
# cd /tmp
# tar -xzf commons-daemon-native.tar.gz 
# cd commons-daemon-1.0.2-native-src/unix

# autoconf 
# sh configure 
# make clean 
# make

# chown tomcat. jsvc
# mv jsvc /opt/tomcat6/bin 
# cd /tmp
# rm -rf commons-daemon*


自動起動スクリプトの作成

/etc/init.d/tomcat6 を新規に作成する
作成したスクリプトはこちら


#!/bin/sh
#
# chkconfig: - 80 20
# description: tomcat

# Source function library.
. /etc/init.d/functions

JAVA_HOME=/usr/lib/jvm/java-1.6.0-sun

CATALINA_HOME=/opt/tomcat6
TOMCAT_USER=tomcat
TMP_DIR=/tmp
CATALINA_OPTS=
CLASSPATH=\
$JAVA_HOME/lib/tools.jar:\
$CATALINA_HOME/bin/commons-daemon.jar:\
$CATALINA_HOME/bin/bootstrap.jar
PIDFILE=/var/run/tomcat.pid
LOCKFILE=/var/lock/subsys/tomcat
DAEMON=$CATALINA_HOME/bin/jsvc

start(){
    #
    # Start Tomcat
    #

    echo -n "Starting tomcat: "
    $DAEMON \
    -pidfile $PIDFILE \
    -user $TOMCAT_USER \
    -home $JAVA_HOME \
    -Dcatalina.home=$CATALINA_HOME \
    -Djava.io.tmpdir=$TMP_DIR \
    -outfile $CATALINA_HOME/logs/catalina.out \
    -errfile '&1' \
    $CATALINA_OPTS \
    -cp $CLASSPATH \
    org.apache.catalina.startup.Bootstrap

    #
    # To get a verbose JVM
    #-verbose \
    # To get a debug of tomcat.
    #-debug \
    RETVAL=$?
    if [ $RETVAL = 0 ]; then
        echo_success
        touch $LOCKFILE
    else
        echo_failure
    fi
    echo
}

stop(){
    #
    # Stop Tomcat
    #
    echo -n "Shutting down tomcat: "
    $DAEMON \
    -stop \
    -pidfile $PIDFILE \
    org.apache.catalina.startup.Bootstrap
    RETVAL=$?
    if [ $RETVAL = 0 ]; then
        echo_success
        rm -f $PIDFILE $LOCKFILE
    else
        echo_failure
    fi
    echo
}

case "$1" in
    start)
        start
        ;;
    stop)
        stop
        ;;
    restart)
        stop
        start
        ;;
    status)
        status $DAEMON
        RETVAL=$?
        ;;
    *)
        echo $"Usage: tomcat {start|stop|restart|status}"
        exit 1
        ;;
esac 



chmod +x /etc/init.d/tomcat6 
chkconfig tomcat6 on 


Tomcat 起動の確認

tomcat を起動する


# /etc/init.d/tomcat6 start


ポートを確認する


# netstat -anp | grep jsvc
tcp 0 0 :::8009 :::* LISTEN 22742/jsvc.exec
tcp 0 0 :::8080 :::* LISTEN 22742/jsvc.exec


下記のURLにアクセスして、tomcat のページが表示されれば、OK


http ://example.com:8080/


Tomcat と Apache を連携する

/etc/httpd/conf.d/proxy_ajp.conf を変更する


#ProxyPass /tomcat/ ajp://localhost:8009/
 ↓
ProxyPass /tomcat/ ajp://localhost:8009/


apachet を再起動する


# /etc/init.d/httpd restart


Tomcat と Apache の連携の確認

下記のURLにアクセスして、tomcat のページが表示されれば、OK


http ://example.com/tomcat/


「Hello World!」を表示する


# cd /opt/tomcat6/webapps/ROOT/WEB-INF/ 
# mkdir classes 
# cd classes 


HelloWorld.java を作成する


import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;

public class HelloWorld extends HttpServlet {

    public void doGet(HttpServletRequest request
                     ,HttpServletResponse response)
    throws IOException, ServletException{

        response.setContentType("text/html");
        PrintWriter out = response.getWriter();
        out.println("<html>");
        out.println("<head>");
        out.println("<title>Hello World!</title>");
        out.println("</head>");
        out.println("<body>");
        out.println("<h1>Hello World!</h1>");
        out.println("</body>");
        out.println("</html>");
    }
} 


コンパイルする


# javac -classpath /opt/tomcat6/lib/servlet-api.jar HelloWorld.java 


web.xml にサーブレットを登録する

/opt/tomcat6/webapps/ROOT/WEB-INF/web.xml
の間に下記を追加する


<servlet>
    <servlet-name>HelloWorld</servlet-name>
    <servlet-class>HelloWorld</servlet-class>
</servlet>

<servlet-mapping>
    <servlet-name>HelloWorld</servlet-name>
    <url-pattern>/HelloWorld</url-pattern>
</servlet-mapping>


下記のURLにアクセスして、「Hello World!」が表示されれば、OK


http ://example.com/tomcat/HelloWorld


参考

“安全”のために Tomcatを理解し、構築し、動作させる

CentOS5.3 に Tomcat6 を入れてみた

ページ移動
CentOS 5 に Sun Java をインストールする 次の記事
投票者の合計: 0
平均: 0
投稿された内容の著作権はコメントの投稿者に帰属します。
スポンサー

寄付
配布しているソフトが気に入ったら、寄付をお願いします。
寄付

PageRank のページ毎の表示
http://linux.ohwada.jp/ modules/smartsection/item.php?
PageRank 0 PageRank

メインメニュー

マニュアル

ログイン