2012-04-10 59 views
2

我目前正在構建一個也使用websockets的web應用程序。 (Rails作爲Web服務器和對的NodeJS socket.io)子域名。你如何使用子域進行開發?

我有我的構建應用程序使用子域名來連接到服務器的NodeJS和Rails Web服務器之間的分離。我有「socket.mysite.com」重定向到節點服務器和其他一切到Web服務器。

我能夠在本地主機上測試此功能。我只是修改了我的/ etc/hosts文件,包括以下內容:

127.0.0.1 socket.mysite.com 
127.0.0.1 mysite.com 

我知道,在生產,我只是要生成socket.mysite.com CNAME記錄,這也將我的用戶的計算機上運行。

不過,我習慣了大約傳遞一個IP地址的測試我的應用程序。我的團隊通常在自己的機器上設置服務器並進行開發。當我們要測試我們的個人服務器時,我們只是傳遞一個像「http://123.45.123.45」這樣的IP。

隨着新的子砍,這是不修改我的每個測試人員的/ etc/hosts文件中不再可能。我真的不希望我的測試人員當場修改他們的/ etc/hosts。我可以做的是讓我的團隊的每個成員都擁有自己的域,併爲每個團隊成員創建適當的CNAME記錄。

是否有更簡單的方法,讓我在一個IP上運行我的應用程序,只是繞過那個IP?

回答

0

這聽起來像你需要攀登超越的只是簡單的編輯主機文件的日子。雖然你可以繼續讓每個人都在你的團隊繼續編輯主機文件,有我在這裏看到的兩個主要風險:

  • 對於你的想法只使用IP地址,你可能缺少測試的東西,你除非您正在製作,否則不會看到該問題,因爲問題可能取決於域配置中的某些內容。

  • 對於使用主機條目,您會給每個開發人員和測試人員的配置帶來很多複雜性和不必要的更改,這些當然會爲錯誤留下大門,並且還需要時間長期累積。

設置DNS服務器可能對您的情況有所幫助。您可以爲每個匹配特定模式的開發人員映射一組域,以便您的應用程序仍能正常運行。這將允許您共享URLS,而不必不斷重新配置每個人的計算機。此外,營銷和銷售利益相關者也可以輕鬆查看產品演示,而無需瞭解難以捉摸的主機文件。

如果你有一個IT部門,他們可以幫你設置的DNS。但是,如果你是一個沒有真正IT部門的小團隊,一些用戶使用DNS systems designed for home or small office networks找到了成功。

+0

我目前是一個兩人團隊在我的客廳裏工作。你有什麼更快,更容易推薦? – disappearedng 2012-04-10 07:03:31

+0

您可能需要在[超級用戶](http://superuser.com)或[程序員SE](http://programmers.stackexchange.com)上搜索*。你更有可能在那裏找到更有針對性的結果。 – jmort253 2012-04-10 07:05:38