【问题标题】:Exclude paths from terraform aws_lb_listener从 terraform aws_lb_listener 中排除路径
【发布时间】:2021-05-26 23:27:57
【问题描述】:

我有一个将所有流量重定向到 HTTPS 的 aws_lb_listener,但我想排除某些路径。这可能吗?我只看到了一种包含而不是排除的方法。

resource "aws_lb_listener" "web_http" {
  load_balancer_arn = aws_lb.web.arn
  port              = "80"
  protocol          = "HTTP"

  default_action {
    type = "redirect"
    redirect {
      port        = "443"
      protocol    = "HTTPS"
      status_code = "HTTP_301" # permanent redirect
    }
  }
}

【问题讨论】:

    标签: amazon-web-services terraform exclude-constraint


    【解决方案1】:

    您可以使重定向到 https 的优先级较低(或 aws_lb_listener 所称的较高顺序),并为您要排除的具有较高优先级的路径创建单独的操作,以便首先评估它们。

    【讨论】:

    • 很好用!您创建了哪些操作来防止重定向?
    • 这取决于您希望其他路径做什么。你可以让它提供一个固定的响应——比如一个错误页面——或者让它把请求转发给一个目标组。
    • 我只是不想让其他路径做任何事情——只是静态的(例如来自 http --> 转到 http)
    • 您的 SSL 是在您的 Web 服务器实例还是负载均衡器上?如果是后者,您将需要转发操作以通过 HTTP 将这些路径发送到您的 Web 服务器。如果是前者,您应该通过 Web 服务器软件 (Apache/Nginx) 上的虚拟主机配置这些路径规则,而不是通过负载均衡器。另外,为什么要从 HTTPS 中排除某些路径?
    猜你喜欢
    • 2018-04-12
    • 2018-07-18
    • 2011-03-16
    • 1970-01-01
    • 2019-09-05
    • 2019-11-19
    • 2014-02-04
    • 1970-01-01
    • 2011-10-26
    相关资源
    最近更新 更多