2017-04-20 114 views
0

我們有許多項目使用http-server和Express來爲不同的端口服務不同的項目組件,即:8080上的用戶界面和4040上的一些API。npm http-server替代端口

現在,我經常一次運行多個不同的項目,這些人都希望使用8080作爲其用戶界面,使用4040作爲其API。

http-server(https://www.npmjs.com/package/http-server)是否具有用於選擇替代端口的默認進程?如果沒有,任何人都可以提出一個npm包來提供它嗎?

最終我想要:項目一UI 8080和API 4040和項目二UI 8081和API 4041。或類似的東西。

乾杯!

回答

0

你可以嘗試使用Node-Static用戶界面,我假設,因爲它只是靜態內容。

一個進程監控管理器,例如pm2來啓動您的項目。

您還可以爲每個項目/ UI端口變量設置/獲取環境變量。

process.env.PROJECT_ONE_UI_PORT 
process.env.PROJECT_ONE_API_PORT 
process.env.PROJECT_TWO_UI_PORT 
process.env.PROJECT_TWO_API_PORT 

有用的文章是here簽出處理配置的部分。

另一種方法是處理錯誤,如果端口已被使用但可能會破壞其他服務的內容,如UI正在尋找api的錯誤URL。在這種情況下,您可能會重新考慮您的體系結構,並通過Web服務器使用服務發現來動態使用其他端口和重建配置。如果您缺乏相關知識,我相信這可能是一種過度的想法。