微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

HA 代理 - 在同一域 ACL 上同时使用 HTTP 和 HTTPS

如何解决HA 代理 - 在同一域 ACL 上同时使用 HTTP 和 HTTPS

我在多个主机上有一个有效的 HA-Proxy 转发请求 HTTPS。 对于一台主机,HTTP 流量应保持为纯 HTTP

我知道可以避免一个规则的重定向规则,但我不清楚是否需要声明两个后端

现有代码

frontend HTTPIN
    bind localhost:80
    bind localhost:443 ssl crt-list /etc/haproxy/ssl/crt-list
    
    http-request set-header X-Forwarded-Port %[dst_port]
    http-request add-header X-Forwarded-Proto https if { ssl_fc }

    redirect scheme https code 301 if !{ ssl_fc }
    
    acl host_HOST1 hdr(host) -i sub.domain.com
    
    use_backend HOST if host_HOST1
    
backend HOST
    server host_ip host_ip:443 check ssl check-ssl verify none
    http-check expect rstring ^200\ OK(.*)$

目标是让 http://sub.domain.com 转到 host_ip:80,https://sub.domain.com 转到 host_ip:443。

感谢您的帮助!

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。