前提
自己学習の一環として、Java11、SpringBootによる開発を行っております。
サーバーはAWSのEC2(OSはAmazonLinux2)を使用しています。
warパッケージを生成し、EC2内のTomcatに配備し、プログラムを公開したいと思っています。
実現したいこと
EC2にインストールしたApacheとTomcatを、ajpで連携をさせたいです。
具体的には、「http://パブリックIP/」 でアクセスした際に、SpringBootで作成したWebアプリケーションのトップページが表示されるようにしたいです。
設定
■ EC2
- ElasticIPでパブリックIPアドレスを固定してあります。
- セキュリティグループで 80 と 8080 番のポートを開放しています。
■ Apache
- インストール :yumでインストール
- バージョン:Apache2.4.41
- 設定 :自動起動設定を有効にしてあります。
- 挙動 :「http://パブリックIP/」でアクセスすると、Apacheのデモページが表示されます。
■ Tomcat
- インストール :wgetで最新版をインストール
- バージョン:Tomcat9.0.34
- 設定 :サービス登録をし、自動起動設定を有効にしてあります。
- 挙動 :「http://パブリックIP:8080」でアクセスすると、Tomcatのデモページが表示されます。
また、webappsフォルダに「test」という名称のwarファイルを配備しています。
「http://パブリックIP:8080/test」でアクセスすると、SpringBootで作成したアプリのトップページが表示されます。
上記の設定後、ApacheとTomcatを連携するために試したこと
■ Tomcat
/opt/apache-tomcat/conf/server.xml
で、8009番ポートのコメントを解除
<!-- Define an AJP 1.3 Connector on port 8009 --> <Connector protocol="AJP/1.3" address="::1" port="8009" redirectPort="8443" />
■ Apache
/etc/httpd/conf.modules.d/00-proxy.conf
で、モジュールが有効になっていることを確認
LoadModule proxy_module modules/mod_proxy.so LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
- Try①
/etc/httpd/conf/httpd.conf
に直接設定を書き込む
ProxyPass / ajp://localhost:8009/test/
- Try② 外部ファイルを読み込む
/etc/httpd/conf/extra/httpd-proxy.conf
を作成
ProxyPass / ajp://localhost:8009/test/
/etc/httpd/conf/httpd.conf
で読み込む
Include /etc/httpd/conf/extra/httpd-proxy.conf
発生している問題・エラーメッセージ
Try① , Try② の状態で http://パブリックIP でアクセスすると、503エラー の画面が表示される。
Service Unavailable The server is temporarily unable to service your request due to maintenance downtime or capacity problems. Please try again later.
Apacheのerror_log
[Thu Apr 23 17:04:30.937589 2020] [proxy:error] [pid 17809] (111)Connection refused: AH00957: AJP: attempt to connect to 127.0.0.1:8009 (localhost) failed [Thu Apr 23 17:04:30.937648 2020] [proxy_ajp:error] [pid 17809] [client 自分のグローバルIP] AH00896: failed to make connection to backend: localhost
備考
ApacheやTomcatといったミドルウェアに疎く、なかなか実現ができません。。。
一応、設定ファイルを変更したらsystemctl restart
で再起動はかけております。
何か足りない情報がございましたら、ご指摘いただければ追記を致します。
何卒宜しくお願い致します。
回答2件
あなたの回答
tips
プレビュー