2011年5月15日日曜日

Apche HTTP Server と Tomcatの連携

バージョンは以下の通りです。
Apache Http Server:2.2
Tomcat:6.0

%APACHE_HOME%はApache Http Server のインストールディレクトリを意味します。

1.%APACHE_HOME%\conf\httpd.confに設定の追加

  Apache Http Serveに対してTomcatに処理をさせたいリクエストが来た場合、
Tomcatに処理がわたるように設定します。

ここでは次のリクエストがApache Http Serverに対して届いた場合、
Tomcatのページを表示する設定を行います。

 http://localhost/hey_tom

 この3行をhttpd.confの最後に追加します。
 <Location /hey-tom/>
  ProxyPass ajp://localhost:8009/
 </Location>

また、モジュールmod_proxy_ajpおよびmod_proxy.soを利用するので、
httpd.confの上のほうで、

#LoadModule proxy_module modules/mod_proxy.so
#LoadModule proxy_ajp_module modules/mod_proxy_ajp.so

となっている、箇所のコメントを次のように解除します。

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

  これはApache Http ServerでTomcatと連携するためのモジュール(わたしは、プラグインみたいなものと理解している)。


2.動作確認

Tomcat、Apache Http Server の順に起動し、ブラウザからURLを入力すると、、

成功


2011年5月14日土曜日

Apache HTTP Serverのインストール

2011年5月14日現在最新バージョンである2.2.18をインストールします。

1.ダウンロード
(1)http://httpd.apache.org/に接続します。

    Apache HTTP Server 2.2.18 Released のDownloadリンクをクリック

  (2)表示されたページのStable Releases:(安定バージョンの意味)の2.2.18リンクをクリック

 (3)Apache HTTP Server (httpd) 2.2.18 is the best available versionの箇所に移動するので、
「Win32 Binary without crypto (no mod_ssl) (MSI Installer):  httpd-2.2.18-win32-x86-no_ssl-r2.msi」をクリック

httpd-2.2.18-win32-x86-no_ssl-r2.msiファイルがダウンロードされます。

  (4)ダウンロードファイルを実行するとインストーラーが起動される

この画面の上3つの設定では、適当にダミー用の値を設定した。
ここでの設定が、httpd.confファイルに反映される。あとから変更も可能。
















typicalを選択。(標準という意味)
















インストールディレクトリは好みによってかえてください。
















そのほかはデフォルトでよし。


2.動作確認

私の場合、インストールしたら、自動で起動されたので、ブラウザを立ち上げ、
http://localhost/ にアクセスした。


これでインストールOK

















今後、Apache HTTP Server 設定ファイルの学習と Tomcatとの連携を、
やろうと思います。

tomcat6設定

tomcatバージョン6.0.32を使用しています。

1.コンテキストの設定方法

tomcat5から設定方法が変わった。

$CATALINA_HOME\conf\[engine name]\[host name]ディレクトリ配下にコンテキスト名.xmlと言う 
XMLを作成して行います。[engine name]、[host name]はserver.xmlに設定されているengine名、host名です。デフォルトの設定は[engine name]が[Catalina]、[host name]が[localhost]です。今回はコンテキスト名をsample1にするため、設定ファイルは$CATALINA_HOME\conf\Catalina\localhostディレクトリ配下の、sample1.xmlファイルとなります。

設定ファイルのサンプル($CATALINA_HOME\conf\Catalina\localhost\sample1.xml)
<Context path="/smaple1" docBase="C:\MyWorks\smaple1\00rootdir" reloadable="true"/>

上記設定の場合のURL:http://localhost:8080/sample1/

このpath="/smaple1"を変えてもアクセスする時のURLは変わらなかった。アクセスするときのURLを変更したいときは、ファイル名自体をを変える必要がある。じゃあpath属性の意味って無いじゃんw(server.xmlにContextを記載していた時の名残かな?)。ためしにpath属性を削除しても、何の支障もなくサンプルが動いた。

ちなみに上記例の、対象となるコンテキストのweb.xmlの設定は以下のようにしている。

<?xml version="1.0" encoding="ISO-8859-1"?>
<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
         http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
         version="2.4">
  <servlet>
    <servlet-name>Hello</servlet-name>
    <servlet-class>jp.study.HelloServlet</servlet-class>
  </servlet>
  <servlet-mapping>
    <servlet-name>Hello</servlet-name>
    <url-pattern>/</url-pattern>
  </servlet-mapping>
</web-app>