Javaアプリケーションサーバー構築(Tomcat5)

最終更新日: 2010.05.16

<<トップページ <<新着情報 <<質問掲示板 <<アンケート <<リンク集 <<サイト内検索 <<管理人へメール <<Fedoraで自宅サーバー構築

■概要

TomcatでJavaアプリケーションサーバーを構築する。

Webサーバーが構築済であること


■JDKインストール

(1)JDKダウンロード
J2SEのサイトからリンクをDownload Java SE (J2SE)Download JDK・・・とたどっていき、Accept License Agreementをチェックし、Linux RPM in self-extracting fileのリンクをクリックしてダウンロードし、WinSCP等でサーバー上の適当なディレクトリへアップロードする。

(2)JDKインストール
[root@centos ~]# chmod +x jdk-1_5_0_06-linux-i586-rpm.bin ← 実行権限付加

[root@centos ~]# ./jdk-1_5_0_06-linux-i586-rpm.bin ← JDKインストール

※ライセンスが大量に表示されるのでSPACEキー押下で流す

Do you agree to the above license terms? [yes or no]
yes ← yes応答
Unpacking...
Checksumming...
0
0
Extracting...
UnZipSFX 5.42 of 14 January 2001, by Info-ZIP (Zip-Bugs@lists.wku.edu).
  inflating: jdk-1_5_0_06-linux-i586.rpm  
Preparing...                ########################################### [100%]
   1:jdk                    ########################################### [100%]
 
Done.

[root@centos ~]# rm -f jdk-1_5_0_06-linux-i586.rpm ← 抽出したRPMファイルを削除

[root@centos ~]# rm -f jdk-1_5_0_06-linux-i586-rpm.bin ← ダウンロードしたファイルを削除

(3)java-1.4.2-gcj-compatアンインストール
javaコマンドがデフォルトでインストールされているGNU版javaコマンドへのリンクとなっているため、SUN版javaコマンドを有効にするためにリンクパッケージを削除する
[root@centos ~]# yum -y remove java-1.4.2-gcj-compat ← java-1.4.2-gcj-compatアンインストール
Setting up Remove Process
Resolving Dependencies
--> Populating transaction set with selected packages. Please wait.
---> Package java-1.4.2-gcj-compat.noarch 0:1.4.2.0-27jpp set to be erased
--> Running transaction check

Dependencies Resolved

=============================================================================
 Package                 Arch       Version          Repository        Size 
=============================================================================
Removing:
 java-1.4.2-gcj-compat   noarch     1.4.2.0-27jpp    installed         2.2 k

Transaction Summary
=============================================================================
Install      0 Package(s)         
Update       0 Package(s)         
Remove       1 Package(s)         
Total download size: 0 
Downloading Packages:
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
  Removing  : java-1.4.2-gcj-compat        ######################### [1/1]

Removed: java-1.4.2-gcj-compat.noarch 0:1.4.2.0-27jpp
Complete!

■JDK設定

[root@centos ~]# vi /etc/profile ← 環境変数設定ファイルを編集
以下を最終行へ追加
export JAVA_HOME=/usr/java/jdk1.5.0_06
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/jre/lib:$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar

[root@centos ~]# source /etc/profile ← 環境変数設定を反映

■JDK確認

[root@centos ~]# vi HelloWorld.java ← JAVAサンプルプログラム作成
public class HelloWorld {
  public static void main(String[] args) {
    System.out.println("Hello World");
  }
}

※Hello Worldと標準出力に出力するJAVAサンプルプログラム

[root@centos ~]# javac HelloWorld.java ← JAVAサンプルプログラムコンパイル

[root@centos ~]# ls -al ← JAVAサンプルプログラムコンパイル結果確認
合計 16
-rw-rw-r--    1 root root      425  3月 11 22:22 HelloWorld.class ← classファイルが作成されていることを確認
-rw-rw-r--    1 root root      115  3月 11 22:22 HelloWorld.java

[root@centos ~]# java HelloWorld ← JAVAサンプルプログラム実行
Hello World ← Javaサンプルプログラム実行結果

[root@centos ~]# rm -f HelloWorld.* ← 作成したJAVAサンプルプログラムを削除

■Tomcatインストール

[root@centos ~]# wget http://ftp.kddilabs.jp/infosystems/apache/tomcat/tomcat-5/v5.5.12/bin/apache-tomcat-5.5.12.tar.gz
 ← Tomcatダウンロード

※最新版のURLはダウンロードページで確認すること

[root@centos ~]# tar zxvf apache-tomcat-5.5.12.tar.gz ← Tomcat展開

[root@centos ~]# mv apache-tomcat-5.5.12/ /usr/local/tomcat ← Tomcat展開ディレクトリをリネームして移動

[root@centos ~]# rm -f apache-tomcat-5.5.12.tar.gz ← ダウンロードしたTomcatを削除

■Tomcat設定

(1)環境変数にTomcatのパスを追加
[root@centos ~]# vi /etc/profile ← 環境変数を編集
以下を最終行へ追加
export TOMCAT_HOME=/usr/local/tomcat
export CATALINA_HOME=/usr/local/tomcat
export CLASSPATH=$CLASSPATH:$CATALINA_HOME/common/lib

[root@centos ~]# source /etc/profile ← 環境変数を反映

(2)Tomcat設定
[root@centos ~]# vi /usr/local/tomcat/conf/web.xml ← Tomcat設定ファイル編集
        <init-param>
            <param-value>true</param-value>
            ↓
            <param-value>false</param-value> ← 変更(ディレクトリ一覧を表示しないようにする)
        </init-param>

■Tomcat起動

[root@centos ~]# vi /etc/rc.d/init.d/tomcat ← Tomcat起動スクリプト作成
#!/bin/bash
#
# Startup script for the tomcat
#
# chkconfig: 345 80 15
# description: Tomcat is a Servlet+JSP Engine.

# Source function library.
. /etc/rc.d/init.d/functions
source /etc/profile

start(){
    if [ -z $(/sbin/pidof java) ]; then
        echo "Starting tomcat"
        $CATALINA_HOME/bin/startup.sh
        touch /var/lock/subsys/tomcat
    else
        echo "tomcat allready running"
    fi
}

stop(){
    if [ ! -z $(/sbin/pidof java) ]; then
        echo "Shutting down tomcat"
        $CATALINA_HOME/bin/shutdown.sh
        until [ -z $(/sbin/pidof java) ]; do :; done
        rm -f /var/lock/subsys/tomcat
    else
        echo "tomcat not running"
    fi
}

case "$1" in
    start)
        start
        ;;
    stop)
        stop
        ;;
    restart)
        stop
        start
        ;;
    status)
        $CATALINA_HOME/bin/catalina.sh version
        ;;
    *)
        echo "Usage: $0 {start|stop|restart|status}"
esac

exit 0

[root@centos ~]# chmod +x /etc/rc.d/init.d/tomcat ← Tomcat起動スクリプトに実行権限付加

[root@centos ~]# /etc/rc.d/init.d/tomcat start ← Tomcat起動
Starting tomcat
Using CATALINA_BASE:   /usr/local/tomcat
Using CATALINA_HOME:   /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME:       /usr/java/jdk1.5.0_06

[root@centos ~]# chkconfig --add tomcat ← Tomcat起動スクリプトをchkconfigへ追加

[root@centos ~]# chkconfig tomcat on ← Tomcat自動起動設定

[root@centos ~]# chkconfig --list tomcat ← Tomcat自動起動設定確認
tomcat          0:off   1:off   2:on    3:on    4:on    5:on    6:off ← ランレベル2〜5のonを確認

■Tomcat確認

http://サーバー名:8080/servlets-examples/にアクセスしてServlet Examplesページが表示されることを確認
http://サーバー名:8080/jsp-examples/にアクセスしてJSP Examplesページが表示されることを確認

■JKインストール

URLに8080を指定しなくてもいいように、ApacheとTomcatを連携するためのコネクタであるJKをインストールする

(1)httpd-develインストール
JKインストールに必要なapxsコマンドが含まれるhttpd-develをインストールする
[root@centos ~]# yum -y install httpd-devel ← httpd-develインストール

(2)JKインストール
[root@centos ~]# wget http://www.meisei-u.ac.jp/mirror/apache/dist/tomcat/tomcat-connectors/jk/source/tomcat-connectors-current-src.tar.gz
 ← JKダウンロード

※最新版のURLはダウンロードページで確認すること

[root@centos ~]# tar zxvf tomcat-connectors-current-src.tar.gz ← JK展開

[root@centos ~]# cd tomcat-connectors-1.2.25-src/native/ ← JK展開先ディレクトリへ移動

[root@centos native]# ./configure --with-apxs=/usr/sbin/apxs && make && make install ← JKインストール

[root@centos native]# cp ../conf/workers.properties /etc/httpd/conf/ ← workers.propertiesをApache設定ファイル格納ディレクトリへコピー

[root@centos native]# cd ← JK展開先ディレクトリを抜ける

[root@centos ~]# rm -rf tomcat-connectors-1.2.25-src/ ← JK展開先ディレクトリを削除

[root@centos ~]# rm -f tomcat-connectors-current-src.tar.gz ← ダウンロードしたJKを削除

■JK設定

(1)Apache設定
[root@centos ~]# vi /etc/httpd/conf.d/jk.conf ← Apache用JK設定ファイル作成
LoadModule jk_module modules/mod_jk.so
JkWorkersFile /etc/httpd/conf/workers.properties
JkMount /servlets-examples/* ajp13
JkMount /jsp-examples/* ajp13

[root@centos ~]# /etc/rc.d/init.d/httpd restart ← Apache再起動
httpd を停止中:                                            [  OK  ]
httpd を起動中:                                            [  OK  ]

(2)Tomcat設定
[root@centos ~]# vi /usr/local/tomcat/conf/server.xml ← Tomcat設定ファイル編集
    <!-- Define a non-SSL HTTP/1.1 Connector on port 8080 -->
    <!-- ← 追加(ポート8080でのTomcatアクセスを無効化)
    <Connector port="8080" maxHttpHeaderSize="8192"
               maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
               enableLookups="false" redirectPort="8443" acceptCount="100"
               connectionTimeout="20000" disableUploadTimeout="true" />
    --> ← 追加(ポート8080でのTomcatアクセスを無効化)

[root@centos ~]# /etc/rc.d/init.d/tomcat restart ← Tomcat再起動
Shutting down tomcat
Using CATALINA_BASE:   /usr/local/tomcat
Using CATALINA_HOME:   /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME:       /usr/java/jdk1.5.0_06
Starting tomcat
Using CATALINA_BASE:   /usr/local/tomcat
Using CATALINA_HOME:   /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME:       /usr/java/jdk1.5.0_06

■JK確認

http://サーバー名:8080/servlets-examples/にアクセスしてエラーとなることを確認
http://サーバー名:8080/jsp-examples/にアクセスしてエラーとなることを確認
http://サーバー名/servlets-examples/にアクセスしてServlet Examplesページが表示されることを確認
http://サーバー名/jsp-examples/にアクセスしてJSP Examplesページが表示されることを確認



▲このページのトップへ戻る

LPIロゴ Copyright© 2005-2010 fallenangels, All rights reserved.
ご自由にリンクしてください(連絡は不要です)
本ページへのご意見・ご要望、誤字・脱字・リンク切れ等のご連絡はこちらからお願いします