ssl - HAProxy 通配符 SSL 后端转发问题

标签 ssl wildcard virtualhost haproxy

我正在使用 HAProxy 1.5-dev21。我购买了通配符 SSL(例如:*.foo.com)。 我希望所有来自 Internet 端口 443 的流量都将根据域名重定向到内部网络,后端服务器是许多运行 HTTP 的 Web 服务器(例如:abc.foo.com:443 -> 192.168.10.10:80 , edf.foo.com :443 -> 192.168.10.11:80) 但是,无论传入的域名是什么,HAProxy 都会将所有流量传递到默认后端。

如果我不使用 SSL,我的配置运行良好 以下是我的简化配置文件:

global
    log     127.0.0.1 local0
    log     127.0.0.1 local1 notice
    maxconn 4096

defaults
    log     global
    mode    http
    option  tcplog
    timeout connect 5000ms
    timeout client 50000ms
    timeout server 50000ms

frontend https-in
    mode tcp
    bind :443 ssl crt /etc/haproxy/foo.com.pem
    use_backend abc if { hdr_end(host) -i abc.foo.com }
    use_backend def if { hdr_end(host) -i def.foo.com }
    default_backend application-backend

backend abc
    mode tcp
    server Server1 192.168.10.10:80

backend def
    mode tcp
    server Server2 192.168.10.11:80

backend application-backend
    mode tcp
    server server3 192.168.10.12:80

最佳答案

您在尝试访问 HTTP 内容时正在使用 tcp 模式。 请打开“模式 http”,它应该可以工作。

巴蒂斯特

关于ssl - HAProxy 通配符 SSL 后端转发问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22243247/

相关文章:

.net - 安装 x509 证书时使用哪个商店

java - 部署在 Wildfly 14 中有效,但在 15 中无效。 IllegalArgumentException 不能同时要求和提供相同的依赖项

apache - 使用 ISPConfig 3.0.4 设置默认虚拟主机

apache - AWS 在一个 EC2 实例上托管多个域

apache - 从 Laravel 4 URL 中删除 index.php 并将 www 重写为非 www

java - 我应该使用 cacerts 还是本地 trustore 但不能同时使用两者?

c# - 尝试远程连接时远程证书无效

jquery - 返工 jQuery 脚本以利用类/Id 的通配符定位

django - 将 SSL 添加到 Django 应用程序、Ubuntu 16+、DigitalOcean

python - 使用通配符搜索迭代 Redis 哈希键