mil*_*non 5 apache subdomain port minecraft
我正在努力使我的两个Minecraft服务器更容易访问.我尝试了一些解决方案,但到目前为止,没有一个有效地工作.
我有一个正常的vanilla Minecraft服务器在mysite.com:25560上收听,一个Tekkit Minecraft服务器在mysite.com:25570上收听.也就是说,两台Minecraft服务器都在同一台机器上运行.当用户使用指定的端口直接连接到服务器时,它们可以正常工作.
vanilla服务器最初是在标准的Minecraft端口mysite.com:25565上收听的.我已经改变了所以我可以允许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>
Run Code Online (Sandbox Code Playgroud)
使用ProxyPass注释掉的行导致Apache以错误开始,ProxyPass URL必须是绝对的!
为了看看我是否可以使它正常工作,我尝试在相应的位置替换http://www.mysite.com:25560/60,而Apache确实启动时没有任何错误,用户无法连接到服务器.我相信这是因为Minecraft服务器不会将HTTP请求重定向到服务器连接,无论哪种协议.
这让我相信Apache在处理非HTTP请求时没有帮助.如果我弄错了,我怎样才能让Apache正确地将子域流量重定向到端口?否则,没有Apache可以建议一种方法吗?我可以访问所有标准的Linux/Ubuntu实用程序.我一直在寻找相当长的一段时间没有进展.
谢谢!
我相信 iptables 会为你做这件事,假设你在 Linux 上:
iptables -A PREROUTING -t nat -i eth0 -p tcp --dport 25565 -j REDIRECT --to-port 25560
Run Code Online (Sandbox Code Playgroud)
您必须是 root 才能运行此命令,并且它不是永久的。每次服务器重新启动时您都必须运行此命令。
| 归档时间: |
|
| 查看次数: |
5248 次 |
| 最近记录: |