在Cloudflare上设置DNS以指向AWS上的ALB。看来,当我将CNAME记录指向ALB的DNS名称时,它会失败并出现522错误。
当我在负载均衡器的DNS名称上执行nslookup并将记录更改为具有IP之一的A记录时,一切都会按预期进行。由于1)我没有利用DNS名称的负载平衡方面,以及2)负载平衡器的IP随时可能更改,因此该解决方案将无法正常工作。
负载均衡器具有与Cloudflare相同的SSL证书,并且使用以主机为条件的侦听器。
例如:test.domain.com转发到一个目标组,而test2.domain.com转发到另一个目标组。
这种设置是否缺少我的功能?使用IP地址而不使用CNAME时为什么可以正常工作?
更新:包括Terraform中的示例侦听器设置:
resource "aws_lb_listener_rule" "nginx" {
listener_arn = "${var.https_listener_arn}"
priority = 1
action {
type = "forward"
target_group_arn = "${aws_lb_target_group.nginx.arn}"
}
condition {
field = "host-header"
values = ["${var.frontend_host}"]
}
}