Apache2.4.6とTomcat8.0.32の連携設定
ApacheをフロントエンドとしてTomcatと連携出来るよう設定を行います。
環境
設定する環境は、次の環境で確認しています。
- CentOS7(64bit)
- Apache 2.4.6
- Tomcat 8.0.32
Apacheのインストールについては、「CentOS7へApache2.4.6をインストールする」にまとめてあります。 また、Tomcatのインストールについては、「CentOS7へTomcat8.0.32をインストールする」にまとめてあります。
Apache 2.4.6とTomcat 8.0.32の設定
Tomcatには、HTTPサーバーとしての機能も持っていますがHTTPリクエストはApacheが受けTomcatで処理された結果をApacheが返すように設定します。 ApacheとTomcatの間は、mod_proxy_ajpモジュールによって受け渡しが行われます。
Apache側の設定(00-proxy.conf)
/etc/httpd/conf.modules.d/の「00-proxy.conf」でajpが設定されているか確認します。 「00-proxy.conf」ファイルに次の2行があるか確認します。
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
/etc/httpd/conf.d/ディレクトリへサーブレットへのリクエストがあった場合の設定をproxy-ajp.confとして作成します。 例えば、「http://ドメイン名/docs/」へリクエストがあった場合、Tomcat側の「docs」が呼び出されるよう次のように設定します。
<Location /docs/>
ProxyPass ajp://127.0.0.1:8009/docs/
</Location>
Tomcat側の確認と設定
次にTomcat側の設定を行います。
/opt/apache-tomcat-8.0.32/conf/server.xmlに次の設定があるか確認します。
<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/」と入力します。 次の画面が表示されれば、Apacheの待ち受けポートであるポート番号80からTomcatへ連携出来ていることが確認できます。
ここまでで、ApacheとTomcatの連携設定は完了です。