2012-10-21 66 views
0

我有一個NodeJS應用程序。我想爲我的每個客戶創建一個不同的應用程序實例。我最初的想法就是要在不同的端口每個實例,然後啓動一個節點實例聽了這些端口:IIS7:將請求重定向到內部端口

客戶1:http://client1.myapp:81

客戶端2(我的節點的應用程序偵聽端口81的實例): http://client2.myapp:82

(我節點應用程序偵聽端口82的實例)...

我不想在外部打開那麼多端口,所以我想知道是否有可能有我的客戶端訪問他們的應用程序通過端口80:

客戶端1:​​

客戶端2:http://client2.myapp

...

,然後讓IIS重定向每個請求到其相應的內部端口,其中,所述特定應用程序的NodeJS實例會聽。

這樣我只需要在外部打開的端口80。

這可能嗎?這是常見的做法嗎?

在此先感謝。

+0

我只會爲每個客戶創建一個虛擬目錄的應用程序。 http:// my_url/client1,http:// my_url/client2,http:// my_url/client3 .....你的解決方案只需要端口80,但它需要DNS解析 – uriz

+0

對不起,請你延長你的迴應?理想情況下,我想使用子域名,在與客戶打交道時看起來更優雅。如果我有虛擬目錄,那麼如何解決將請求發送到每個端口並且不在外部打開這些端口?謝謝 –

+0

您好, 爲誰可能感興趣:我研究了IIS中的反向代理功能,但最終創建了簡單的重定向規則,從http://client1.myapp到http:// localhost:81 似乎端口81不需要從外部打開。 如果有人發現這種方法有什麼問題,請告訴我。 謝謝! –

回答

0

你可以做你在第二個例子(子域)中的建議。 你需要的是一個有效的域名和一個靜態的IP地址。 你將需要添加一個A記錄(你的DNS服務器)所有子域名重定向到你的IP(即* .your_domain.com - >你的IP地址)

然後爲每個客戶你會必須用他的標題創建一個站點 - clientX.your_domain.com

這是常見的做法。我也使用這種方法向我的客戶展示他們的網站。

相關問題