みなさんこんにちは、 masa です。今日は Tomcat をインストールして Apache と連携させることで、アクセスポートを 8080 から 80 へ変更する方法をご紹介します。
まずは yum でTomcat, open-jdk (Javaの開発環境) 等を入れます。
(環境 CentOS 6.6)
yum install tomcat java-1.7.0-openjdk-devel java-1.7.0-openjdk
これで Java 開発環境と Tomcat7 が入りました。
念のため、ajp モジュールが入っているか確認してください。
# httpd -M | grep ajp proxy_ajp_module (shared)
Tomcat のアクセスポートを 8080 から 80 へ変更する
1. /etc/tomcat7/server.xml を以下のように編集
※AJP コネクタの待ち受けポートを 8080 から 8009 へ変更
※AJP コネクタの待ち受けポートを 8080 から 8009 へ変更
------------------------------
<!--
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
-->
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
------------------------------
2. /etc/httpd/conf.d/httpd-proxy.conf を作成し、以下のように記載する
------------------------------
<Location /hoge> #アクセスしたいURLを入力 例)http://ホスト名/hoge
ProxyPass ajp://localhost:8009/hoge-file #/var/lib/tomcat7/webapps/ 直下のディレクトリ
</Location>
//以下の通り複数設定可能
<Location /hoge2> #別のURLを作成して同じディレクトリを見せることも可能
ProxyPass ajp://localhost:8009/hoge-file
</Location>
------------------------------
最後に httpd と tomcat を再起動
/etc/init.d/httpd restart /etc/init.d/tomcat7 restart
これで http://ホスト名/hoge にアクセスすると webapps に展開している Javaアプリケーションが見えるはずです。
いかがでしたか?この他にも iptables で 8080 → 80 へポートフォワードする方法もあります。その方が都合が良い方は調べてみてくださいね。

