teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

追記

2020/01/24 03:25

投稿

yu_1985
yu_1985

スコア7640

answer CHANGED
@@ -6,4 +6,22 @@
6
6
 
7
7
  ALBのリスナーの80番と443番で別々のターゲットグループを設定しているんですか?
8
8
  ALBのリスナー設定、ターゲットグループ
9
- それとALB、EC2インスタンスそれぞれのセキュリティグループの設定を貼ってみてください。
9
+ それとALB、EC2インスタンスそれぞれのセキュリティグループの設定を貼ってみてください。
10
+
11
+ ※追記
12
+ ターゲットグループの設定で80番ポートをちゃんと指定して、ヘルスチェックはうまく行ってますね。
13
+ ターゲットグループのほうで443ポートを指定したら失敗するのは正しい挙動ですし、ALBに証明書を設定するのであればその必要もありません。(EC2のApacheでHTTPSの設定を入れていないと思いますので)
14
+ やりたいことは、ALBでHTTPSのリクエストを受けて、そのリクエストをEC2インスタンスに振り分けるということですね。
15
+ ここでのALB→EC2のリクエストの振り分けの設定がターゲットグループの設定です。なのでここを443ポートにする必要はありません。(ALB→EC2の間の通信も暗号化したいという要望があれば話は別ですが、プライベートネットワーク内の通信なので特に必要はないと思います。一応[やるならこんな感じ](https://dev.classmethod.jp/cloud/aws/alb-backend-https/))
16
+
17
+ ALBではHTTPのリスナーを設定していないので、HTTPでアクセスしたら表示されるというのはむしろおかしな挙動ですね。
18
+ キャッシュがローカルに残ってるんでしょうかね?
19
+ キャッシュを消すか、シークレットウインドウを使うとか、[スーパーリロード](http://www.netyasun.com/browser/reload.html)を試すとかしてみてください。
20
+
21
+ SSL化したのにHTTPでアクセスさせるのも微妙なので、常時HTTPSになるようにしましょう。
22
+ Apacheやnginxの設定でやると地味に面倒なんですが、ありがたいことに[今はALBの設定だけでできる](https://dev.classmethod.jp/cloud/aws/alb-redirects/)ので、下にあるEC2インスタンスはALBからのHTTPリクエストさえ受け付けられれば十分です。
23
+
24
+ > コマンドラインでdig 取得ドメイン A とするとANSWER SECTIONでAレコードが二つ出てくる状態です。
25
+
26
+ これはALBに2つのサブネットを設定しているからですね。
27
+ 試しにALBのDNS名に対してdigコマンドを打ってみると同じ結果になると思います。