2 つの Minecraft サーバーにアクセスしやすくする作業を行っています。いくつかの解決策を試みましたが、これまでのところ効果的に機能したものはありません。
mysite.com:25560 でリッスンしている通常のバニラ Minecraft サーバーと、mysite.com:25570 でリッスンしている Tekkit Minecraft サーバーがあります。つまり、両方の Minecraft サーバーが同じマシンで実行されています。ユーザーが指定されたポートを使用してサーバーに直接接続すると、これらは正しく機能します。
バニラ サーバーは当初、標準の Minecraft ポートである mysite.com:25565 をリッスンしていました。変更して、Apache が mysite.com:25565 をリッスンし、トラフィックを適切にリダイレクトできるようにしましたが、今のところ機能していません。
私ができるようにしたいのは、mine.mysite.com に送信されたすべてのリクエストを mysite.com:25560 にリダイレクトし、tekkit.mysite.com に送信されたすべてのリクエストを mysite.com:25570 にリダイレクトすることです。DNS はドメイン名と IP アドレスのみを処理するため、DNS 自体はこの再ルーティングを管理できないことを理解しています。
友人の提案を受けて、私の最近の試みは、前に述べたように、ポート 25565 でリッスンし、トラフィックを正しいポートにプロキシするように Apache を再構成することでした。これは私の 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 must be absolute! で開始されます。
正しく動作するかどうかを確認するために、それぞれの場所でhttp://www.mysite.com:25560/60を置き換えてみました。Apache はエラーなしで起動しますが、ユーザーはサーバーに接続できません。 . これは、Minecraft サーバーが HTTP リクエストをサーバー接続にリダイレクトしないためだと思います。
これにより、HTTP 以外のリクエストの処理に Apache は役に立たないだろうと確信するようになりました。私が間違っている場合、Apache がサブドメインのトラフィックをポートに正しくリダイレクトするようにするにはどうすればよいですか? そうでなければ、誰かApacheなしでこれを行う方法を提案できますか? すべての標準 Linux/Ubuntu ユーティリティにアクセスできます。私は進歩なしでかなり長い間探してきました。
ありがとう!