tomcat6インストール(Windows7 - インストーラ版 - JDK6.0)

まだ6?もう7?とりあえず6で!
tomcat6のインストール(Windows7)
zip版がメジャーのようなのでインストーラ版使ってみた!

インストール環境
OSWindows7 Ultimate 64bit(VMWare Fusion3)
マシンiMac 2010 Mid Core i5 760@2.80GHz Mem=12GB(Win6GB,Mac6GB)
HDD1TB(Win545GB,Mac299GB) SSDが欲しいです!
WEBサーバーApache 2.2.21 32bit
JavaJ2SE 1.6.0_25 64bit
PHPPHP 5.3.8 32bit(コメント改造済み)
DBサーバーMySQL 5.5.17 64bit
DB管理ツールphpMyAdmin 3.4.8
統合開発環境Eclipse IDE for C/C++ Version 3.7 Indigo Service Release 1
PHP開発プラグインPHPEclipse 1.2.3
ガンダム初代,Z,ZZ,0083,08小隊,逆襲,F91,V,W,X,∀,SEED,DESTINY,00

tomcat6のインストール
  1. ダウンロード
  2. まずはtomcat6をダウンロードします。
    ↓こちらへアクセス
    Apache Tomcat - Welcome!
     → 左の[Download]ペインから[Tomcat 6.0]を選択
     → [32-bit/64-bit Windows Service Installer]を選択
     → ダウンロードした実行ファイル(apache-tomcat-6.0.35.exe)を実行
    	

  3. インストーラ
  4. インストーラーに従ってインストールします。
    
    
    ウェルコメ!
     → [Next]
    
    
    License Agreement
     → [I Agree]
    
    
    
    Choose Components
     → サンプルはいらないのでそのまま[Next]
    
    
    
    Configuration
     → そのままでも問題なさそうなのでそのまま[Next]
    
    
    
    Java Virtual MachineJREのパスを見つけてきたようだったのでそのまま[Next]
    
    
    
    Choose Install Location
     → そのままでも問題なさそうなのでそのまま[Next]
    
    
    
    Completing the Apache Tomcat 
     → [finish]
    	

  5. tomcat起動確認
  6. tomcat6が正常にインストールされたことを確認します。localhostに8080ポートでアクセス
    http://localhost:8080/
    
    とりあえずtomcatの画面が出れば起動はOK
    	
アプリを置く(JSPで「Hello」と表示するだけ)
  1. アプリ置き場(webapss)
  2. C:\Program Files\Apache Software Foundation\Tomcat 6.0\webapps
     ↑ お作法的にはこの中にアプリケーション(JSPサーブレット)を置くのがデフォ。
    ※実際の運用では管理の都合で別フォルダ下に置くことも多いです
    	
  3. ファイル/フォルダ作成
  4. 作成するファイルやフォルダの一覧
    パス作業内容
    webapps/hello フォルダ作成
    webapps/hello/WEB-INF フォルダ作成
    webapps/hello/WEB-INF/web.xml サーブレットの動作設定
    webapps/hello/hello.jsp JSP作成
    conf/Catalina/localhost/hello.xml localhost/hello」へのアクセス定義
    ※パスはtomcatフォルダからの相対パスです。
    ※ファイルは管理者権限で置くこと。変更が反映されません。
    	
  5. hello.xml
  6. フォルダ構成を記述した設定ファイルをtomcatのconfフォルダ内に置きます。

    <Context path="/hello"
     docBase="C:\Program Files\Apache Software Foundation\Tomcat 6.0\webapps\hello"
     reloadable="true" />


    作成したhello.xmlはconf/Catalina/localhost/に置く。
    この設定では、サーバ名「localhostに来たパス名「/hello」以下へのアクセスは「C:\Program Files\Apache Software Foundation\Tomcat 6.0\webapps\hello」を割り当てる、と定義しています。

    「reloadable」は自動リロードの設定ですが、開発環境なのでtrueにしています。(再起動めんどい)
    本番環境では負荷になるためfalseにします。

  7. web.xml

  8. まだサーブレットは作らないので簡単な定義のみ

    <?xml version="1.0" encoding="Shift_JIS"?>
    <web-app>
    	<welcome-file-list><welcome-file>index.jsp</welcome-file></welcome-file-list>
    </web-app>


    ファイル名を省略したときにindex.jspを読みに行くように設定しているだけです。
    気になる文字コードShift_JIS」ですが、試しに設定しただけであまり深い意味はありません。
    UTF-8など環境に合わせて定義を変えてください。

  9. hello.jsp

  10. 見えればいいのでとりあえず1行テキスト

    hello.jsp


    プログラムがないので不安かも知れませんがこれでOKです。

    そもそもjspって何?って人はphpみたいなものだと思ってください。

    phpはHTMLを記述するとそのまま表示され、<?php 〜 ?>内にphpプログラムを書くことができます。
    jspもHTMLを記述するとそのまま表示され、<% 〜 %>内にjavaプログラムを書くことができます。


  11. hello.jspアクセステスト


  12. パス設定等が正常に行われたのか確認します。
    ↓hello.jspへアクセス。まだApacheと連携していないので8080ポートでアクセス
    http://localhost:8080/hello/hello.jsp

    見えた。おけおけ

Apache連携(mod_proxy_balancer)

  1. Apache - tomcatの連携について
  2. 通常、tomcatApacheと連携して動作させます。
    いちおー以下のような理由が考えられます
    ・HTTPの80番ポートをApacheが使っているためtomcatが使用できない
    ・かと言って8080番のような他のポートを使用するのはファイアウォールの設定等が必要でよろしくない。(無駄なポート開放は避ける)
    ・Apacheを通した方が高度な設定ができる。セキュリティが2重に出来る。
    ※サーバー管理においてセキュリティを考慮した設定の全容を把握しているスタッフは限られています。
    なので設定ミスなどの人為的ミスが良く起こるのですが、チェックを多重化してセキュリティを保つことで万が一の場合でも最悪の事態を回避しやすくなります。
    実際に、セキュリティを必要とするところではSSLを使用していますが、ApachetomcatとプログラムでSSLかどうか判定することでセキュリティを高めたりするわけです。
    (もちろんここで言うSSLチェックはひとつの例であり、他に様々な対策を行う必要があります)
    
    
    過去、tomcatApacheの連携は↓こんな感じで移り変わってきました。(年は適当)
     mod_jserv   (2000年頃)
     mod_jk    (2002年頃)
     mod_jk2    (2004年頃)
     mod_jk    (2006年頃)※mod_jk2が開発中止になり、戻った。
     mod_proxy_ajp (2008年頃)
    
    tomcat」「Apache」「連携」で検索すると結構古い情報が出てくるので気をつけましょう。
    
    現在(2012/07/21)はmod_proxy_ajpを使うのがメジャーなようですが、
    普段mod_proxy_balancerを使っているのでそっちを使います。
    	
  3. httpd.conf修正
  4. httpd.confを修正
    
    ↓以下のコメントアウトを外し、mod_proxy、mod_proxy_ajp、mod_proxy_balancerを有効にします。

    LoadModule proxy_module modules/mod_proxy.so
    LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
    LoadModule proxy_balancer_module modules/mod_proxy_balancer.so



    localhostのVirtualHost設定内に以下の設定を追加

    ## tomcat test用
    <Proxy balancer://ajp-balancer> 
    	BalancerMember ajp://localhost:8009
    </Proxy>
    ProxyPass /hello/  balancer://ajp-balancer/hello/

  5. 設定が終わったらApache,tomcatをリスタート

  6. アクセステスト。


  7. Apacheとの連携が正常に設定されたか確認します。
    ↓hello.jspへアクセス。Apacheと連携したので80番ポートでアクセス
    http://localhost/hello/hello.jsp

    見えた。おけおけ

    以上でtomcat6のインストール終わり!

はじめてのJSP&サーブレット Eclipse 3.7 Indigo+Tomcat 7対応版 (TECHNICAL MASTER 67)

はじめてのJSP&サーブレット Eclipse 3.7 Indigo+Tomcat 7対応版 (TECHNICAL MASTER 67)

Tomcatハンドブック 第2版

Tomcatハンドブック 第2版

基礎からのサーブレット/JSP 第3版 (基礎からのシリーズ)

基礎からのサーブレット/JSP 第3版 (基礎からのシリーズ)