重定向非HTTP流量的端口,基于一个子(Redirect non-HTTP traffic to a

2019-07-31 06:25发布

我的工作让我的两个服务器的Minecraft更容易获得。 我已经尝试了几个解决方案,但到目前为止,还没有有效地工作。

我有一个正常的香草的Minecraft服务器监听mysite.com:25560和Tekkit的Minecraft服务器监听mysite.com:25570。 也就是说,两个的Minecraft服务器在同一台机器上运行。 他们正常工作时,用户可以直接连接到与指定的端口的服务器。

香草服务器最初监听mysite.com:25565,标准的Minecraft端口。 我已经改变了它,所以我可以让Apache将在mysite.com:25565倾听,并适当地将流量重定向,但是这不是到目前为止工作。

我希望能够做的是发送到mine.mysite.com被重定向到mysite.com:25560所有请求,并有发往tekkit.mysite.com所有请求重定向到mysite.com:25570。 据我所知,在DNS本身是没有能力管理这个重路由,因为DNS只处理域名和IP地址。

一个朋友的建议后,我的最新尝试,已经重新配置Apache的,正如我刚才所说,在交通上的端口25565和代理听取正确的端口。 这是我的apache2.conf的一部分:

Listen 25565

NameVirtualHost *:25565

<VirtualHost *:25565>
    ServerName tekkit.mysite.com
    ServerAlias www.mysite.com
    <Proxy *>
        Order allow,deny
        Allow from all
    </Proxy>
    ProxyPreservehost On
#   ProxyPass / www.mysite.com:25570/
    ProxyPassReverse / mysite.com:25570/
</VirtualHost>

<VirtualHost *:25565>
    ServerName mine.mysite.com
    ServerAlias www.mysite.com
    ProxyPreserveHost On
    <Proxy *>
        Order allow,deny
        Allow from all
    </Proxy>
#   ProxyPass / mysite.com:25560/
    ProxyPassReverse / mysite.com:25560/
</VirtualHost>

用的ProxyPass被注释掉的线条让Apache开始与一个错误的ProxyPass URL必须是绝对的!

要看看我能使其正常工作,我又试图取代http://www.mysite.com:25560/60在相应的地方,而Apache没有没有任何错误开始,用户无法连接到服务器。 我相信这是因为我的世界服务器不重定向HTTP请求到服务器的连接,无论协议的可能。

这使我相信,Apache将不会在处理非HTTP请求帮助。 如果我错了,我怎么可能让Apache正常子域名重定向流量到一个端口? 否则,任何人都可以提出一个方法来做到这一点没有阿帕奇? 我可以访问所有标准的Linux / Ubuntu的工具。 我一直在寻找无进展相当长的一段时间。

谢谢!

Answer 1:

解决方案1:

我不认为这会和Apache一起工作,因为你只能得到错误。 搜索在互联网上一段时间后,我发现以下情况: https://github.com/SirCmpwn/MCVHost 。 我不知道是否可行,但如果这样做,完全满足您的需求,我认为。

如果你是在Linux上也许可以与单声道运行它,因为我还没有发现任何Java或Python等同。

编辑:我只是测试它,因为协议改变了它不能与1.4.6工作

方案2(也可能是最好的):

使用SRV记录,因为这1.3认可的Minecraft。 手动曾在已出版的多重http://wiki.multiplay.co.uk/Minecraft/Hostnames 。



Answer 2:

我相信,iptables就会为你做这个,假设你在Linux上:

iptables -A PREROUTING -t nat -i eth0 -p tcp --dport 25565 -j REDIRECT --to-port 25560

你必须以root运行此命令,它不是永久的。 你将不得不每次都运行在服务器重新启动。



文章来源: Redirect non-HTTP traffic to a port, based on a subdomain