現在トラフィックを複数のURLにルーティングするALBがあります。メンテナンスを実行する必要がある場合は、トラフィックを静的S3サイトにルーティングできるようになりたいです。その後、ログインページの代わりに静的な「メンテナンス」ページを表示します。
S3サイトにSSL CERTをロードできるようにするCloudFrontディストリビューションを作成しましたが、そのディストリビューションをS3メンテナンスサイトに送信する方法はわかりません。
これは私が使っているTerraform Albリスナーです。 _target_group
_で私のCloudFrontの配布arn
を指定できます。また、すべてのトラフィックを静的サイトにルーティングしてもらえますか。
あるいは、Bucketオブジェクトを取得するためにABアクセスを許可するS3 arn
をS3ポリシーにリンクするだけです。
_resource "aws_alb_listener" "ssl_alb_httpslistener" {
load_balancer_arn = "${aws_alb.alb_lis.arn}"
port = "443"
protocol = "HTTPS"
ssl_policy = "Sec-TLS"
certificate_arn = "${var.ssl_cert_arn}"
default_action {
target_group_arn = "${data.terraform_remote_state.php.target_arn}"
type = "forward"
}
}
_
ALBを通過するトラフィックを_target_group
_から静的なS3サイトに渡すトラフィックをルーティングできることを期待しますか。これがこれについて行く最善の方法であるならば、好奇心が強い。
Lambda関数をターゲットグループとして、Lambdaを使用して、S3をトリガすることができます。
簡単な回答は、ALB上でリダイレクトオプションを使用してトラフィックを新しいURLに転送することです。 My Route53 URLは、S3バケットにリンクされているCloudFrontの配布に接続されています。ここでは、単一のリダイレクトURLを指定し、最小限のインフラストラクチャの変更を使用してHTTPSトラフィックオプションを保持できました。