2015-01-05 35 views
0

所以我的目標是讓node.js將特定的url轉發給託管着Minecraft服務器的外部服務器。使用node.js將url轉發到遊戲服務器

首先,我該怎麼做呢?當試圖找到一種方法來做到這一切,我似乎能夠在搜索結果中想出如何設置用於開發遊戲的node.js服務器,或者如何在同一臺機器上從一個端口轉發到另一個端口。

其次,關於這樣做,希望我能在客戶端現在往返直接與服務器,而不是通過Node.js的服務器路由的所有數據的方法,這樣做的手段。這裏的目標不是爲了掩蓋服務器,而是爲服務器提供更易於記憶的URL。請注意,如果這是不可能的,我會把它全部通過服務器,並及時看到是否有任何問題。

編輯爲清楚:

我在mydomain.com使用Node.js的一個網站建立,這是一個相當簡單的設置,我想mydomain.com/mine重定向到被託管的服務器的Minecraft不同的公司。

+0

我對你的問題和你實際想要做的事有些困惑。但我的猜測是你想發送一些http請求。試着看看[請求項目](https://www.npmjs.com/package/request)。或者從你的第二個問題來看,這聽起來像你想做一個反向代理,你可以在你的服務器上設置。嘗試搜索反向代理,但有一些選項,但我個人使用Nginx或Apache –

+0

試圖澄清在編輯中,乍一看反向代理看起來是一種解決方案,不理想,因爲它似乎通過Web服務器路由所有數據,但可能會更糟糕。我不認爲請求項目會做我正在尋找的東西,但我可能會在那裏弄錯。 – Varyl

+0

噢好吧,對於這種用例,您可以將響應設置爲301並使用location關鍵字。我將在一分鐘內提交一個示例作爲答案 –

回答

1

我認爲,解決這個問題將涉及您的虛擬主機上的DNS面板創建您的域「A」記錄的最簡單的方法。使用A記錄,您可以將minecraft.mydomain.com重定向到您服務器的IP地址。以下是關於A記錄的一些信息:http://help.dnsmadeeasy.com/spry_menu/a-record/

谷歌搜索關於域名重定向到遊戲服務器使我相信這應該工作,但我沒有自己做。

+0

這肯定會起作用,但是我傾向於運行測試服務器,或者最初在非靜態IP地址本地運行服務器,但這不是理想的情況。這就是爲什麼我在尋找一個node.js解決方案。 – Varyl

1

這聽起來像你只是想做一個簡單的重定向。

假設您的應用程序本身就是一個node.js的應用程序,這裏有一個簡單的例子重定向我的本地主機:9000到谷歌。

var http = require('http'); 

var server = http.createServer(function (request, response) { 
    response.writeHead(301, {Location: 'http://google.com'}); 
    response.end(); 
}); 

server.listen(9000); 

console.log("http://127.0.0.1:9000/"); 
+0

啊,好吧,我不認爲我的世界將採取這樣簡單的重定向,今晚晚些時候會測試並重新檢查,謝謝。 – Varyl

+0

好的,你可以請標記爲接受,如果這是你在找什麼? –

+0

所以不幸的是,這不起作用,在我的測試中,我無法獲得任何node.js代碼來在嘗試通過我的Minecraft連接時觸發它。 – Varyl

相關問題