Apache(SSLでリバースプロキシ)+TOMCAT/AIPO


azureでAIPOをセットアップしたのですが、わけあってさくらVPSに移動することになりました。さくらVPSでは別のWEBサービスが稼働中。ということで、apacheを使ってSSLのリバースプロキシーを構築し、AIPOと接続することにしました。

これが意外と苦戦。VirtualHostをSSLベースでLet’s Encryptで作るまではうまくいくのですが(それでもsakuraのドメインではToo Manyエラーが出て取れませんでした)、AIPOとの接続がうまく行きません。

具体的には
AIPOのログイン画面は出る
CSSが読み込めてない
画像が読み込めてない

■ うまくいかない
【接続構成】
apache(SSL:443)※→TOMCAT/AIPO(SSL:8443)※
※Let’s encryptの証明書をapacheとTOMCAT/AIPO(コンバート済)で使用

で、ログインも出来ませんでした。
分からないときには基本に戻り、8443で一旦直接接続を行うべくiptablesを編集します。
結果、問題なし。ちゃんとログイン画面も出て、ログインも出来ます。

何がおこっているのかわからないので、グーグル検索してみると、どうやらSSLでのリバースプロキシーだと同様の問題が発生しているとの書き込みを複数発見。

■ 解決方法
【接続構成】
apache(SSL:443)※→TOMCAT/AIPO(ajp:8009)
※Let’s encryptの証明書をapacheで使用。

httpd.confのバーチャルホストは以下のように書き換えます。
これでうまく動いてくれました。