Javaに関する様々な情報をご紹介します。

5Webサーバとの連携(CentOS環境)

Javaに関する様々な情報をご紹介します。

Webサーバとの連携(CentOS環境)

ここでは、TomcatとWebサーバを連携する方法について解説します。

実行環境
  • ・CentOS 6.6
  • ・JDK 1.8.0_40
  • ・Apache 2.4.12
  • ・Tomcat 8.0.21

設定方法

ここでは、Apache2.2から標準装備されるようになったTomcat連携モジュールmod_proxy_ajpを使用してTomcatと連携する方法について解説します。前もってApache2.2以上、JDK、Tomcatのインストールは行われているものとします。JDK、Tomcatインストールの詳細はJavaの道:Java(JDK)インストール方法(CentOS環境)Javaの道:Tomcat(インストール(CentOS環境))を参照してください。

Apacheの設定

mod_proxy_ajpモジュールを有効化するため、httpd.confに設定されているmod_proxy_ajpモジュールの設定を有効にします(コメントアウトの削除)。
httpd.confは「$APACHE_HOME\conf」ディレクトリ配下にあります。$APACHE_HOMEはApacheのインストールディレクトリです。

  • モジュールはmod_proxy_ajpに加え、mod_proxyも設定を有効にする必要があります。
    LoadModule proxy_module modules/mod_proxy.so
    LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
    
    # mod_proxyとmod_proxy_ajpのモジュールの設定を有効にします(コメントアウトの削除)。
  • また、httpd.confにmod_proxy_ajpモジュールの設定ファイルを参照するパスを記載します。設定ファイルは、「$APACHE_HOME\conf\conf.d」ディレクトリ配下に「proxy_ajp.conf」ファイルを設置するものとします。
    Include conf/conf.d/proxy_ajp.conf
    
    # mod_proxy_ajpモジュールの設定ファイルを参照するパスを記載。

「proxy_ajp.conf」ファイルを$APACHE_HOMEのconf/conf.dディレクトリ配下に作成します。

# cd /usr/local/apache2/conf/conf.d
# vi proxy_ajp.conf

「proxy_ajp.conf」ファイルに、どのディレクトリにアクセスした場合、Tomcatに連携するか記載します。以下は、docsディレクトリ配下のアクセスをTomcatに連携する場合の設定例です。

<Location /docs/>
ProxyPass ajp://localhost:8009/docs/
</Location>

#「http://ドメイン/docs」にアクセスしたら、「Tomcatのdocsディレクトリ」配下に転送されることを表します。
# 8009は、Tomcat側の連携コネクタのポート番号です。

Tomcatの設定

$CATALINA_HOME\conf配下のserver.xmlの連携コネクタの設定部分が有効になっていること(コメントアウトの削除)、ポート番号が8009になっていることを確認します。
$CATALINA_HOMEはTomcatのインストールディレクトリです。

<!-- Define an AJP 1.3 Connector on port 8009 -->
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />

Tomcatのデフォルトのポート番号8080が有効になっている場合は、コメントアウトし無効にします。

<!--
<Connector port="8080" protocol="HTTP/1.1"
           connectionTimeout="20000"
           redirectPort="8443" />
-->

※コメントアウトし、設定を無効にします。

動作確認

Tomcat、Apacheを起動し、http://localhost/docs/ にアクセスします。以下の画面が出れば正常に動作しています。Tomcatのポート番号8080ではなく、HTTPのポート番号である80で、Tomcatに接続していることが確認できます。

TomcatとWebサーバの連携の動作確認

5Webサーバとの連携(CentOS環境)