HaProxy TCP 子域名

HaProxy TCP 子域名
global
        log         127.0.0.1 local2
        chroot      /var/lib/haproxy
        pidfile     /var/run/haproxy.pid
        maxconn     4500
        user        haproxy
        group       haproxy
        daemon
defaults
        mode                    tcp
        log                     global
        retries                 8
        timeout connect 10s
        timeout server 10s
        timeout client 10s

frontend 0
    bind *:25565
        mode tcp
        acl test hdr(host) -i test.mydomain.com
        use_backend 0 if test
backend 0
    mode tcp
        server node0 22.28.29.28:25585 check

你好,

我正在尝试将 haproxy 用于我的 Minecraft 服务器。我想要的是一个可以添加更多子域以及它们代理到哪些 IP 的配置。我遇到的问题是,当您尝试连接时,它只显示“ Logging in...”,而不是“ Disconnected”。我做错了什么吗?

我也*.mydomain.com指向了我的 haproxy 服务器。

谢谢 :)

答案1

由于 TCP 模式不查找任何标头,因此任何基于标头的功能不适用于 minecraft。 托管多个 minecraft 服务器通常通过使用唯一端口来完成。另一个简单的选择是多个 IP。如果您想要使用多个端口,那么您需要frontend在 haproxy 中为每个监听端口创建一个。

答案2

mode tcp由于您正在检查第 7 层功能,因此您的 ACL 永远不会匹配。

将两个出现的都改为modehttp 就好了。

相关内容