我一直在浏览,寻找答案,但似乎没有一个可行的答案。
情况如下:我有一个 Web 服务器(运行 Apache),我只能访问其文件。它托管我的所有网站。我有一个 VPS,它托管多个游戏服务器。它们不是同一台机器。
我的目标是有 4 个子域名,重定向到不同端口上的每个游戏服务器没有显示端口。我知道使用 SRV 记录可以实现这一点,但相关游戏 (CS:GO) 不支持它们。
s1.mydomain.com -> myvpsip:27015,s2.mydomain.com -> myvpsip:27016,等等。
我知道使用 DNS 无法做到这一点,但是否可以编辑 .htaccess(如图所示这里) 或者也许使用 Linux 工具来检测传入连接以及它来自哪个子域并相应地重定向它?我知道这已经完成了(检测连接来自的子域)。
任何帮助将非常感激。
答案1
不,这是不可能的。游戏需要支持 HTTP 的 Host 标头之类的东西,但这不太可能发生。
答案2
由于 TCP 对 DNS 和主机名一无所知,因此无法使用它们来重定向流量。
唯一的办法就是使用不同的 IP。