お世話になります。知識が乏しくハマっています。。
AWS(Amazon Linux 2)にてEC-CUBE3のサイトを構築したのですが、カード決済のため固定IPが必要になり、NLB(ロードバランサー)にElastic IPを指定して、それを経由することにしました。
◆NLBのリスナー
TLS : 443(ACMで生成した証明書を割り当てています。)
◆ターゲットグループ
ポート:443
※ヘルスチェックはルートディレクトリにhealth.htmlをおき、パスを指定してあります。
ところが、ターゲットでヘルスチェックがエラー(unhealthy)となり、サイトも応答なしとなります(health.htmlも応答なし)。
試しに以下のように80番を追加したところ
◆NLBのリスナー
TCP : 80
TLS : 443(ACMで生成した証明書を割り当てています。)
◆ターゲットグループ
ポート:80(healthy)
ポート:443(unhealthy)
となり、ヘルスチェック用に作成したhealth.htmlは応答します(SSLアドレスでも)。ただ、EC-CUBEの方がリダイレクトループとなり、表示されない状態です。
これは「ポート:443(unhealthy)」が原因なのでしょうか?
また、443をhealthyにする手立てはあるのでしょうか?
本当に知識が乏しく、的外れなことを行っているかもしれませんが、
何か思い当たることがありましたら、何卒ご教授ください。
以下にEC-CUBEの変更点を書きます。
html/index.php(25行あたり追記)
lang
1if (isset($_SERVER['HTTP_X_FORWARDED_PROTO']) && $_SERVER['HTTP_X_FORWARDED_PROTO'] === 'https') { 2 $_SERVER['HTTPS'] = 'on'; 3}
回答1件
あなたの回答
tips
プレビュー