我試圖將3節點js服務器合併爲一個。如何將xmpp服務器集成到節點js應用程序中?
- 在第一臺服務器我有應用服務器。
- 在第二個我有node-xmpp-server,
- 和最後一個node-xmpp-bosh服務器。
我要整合應用server.How最後兩個服務器可以我這樣做,我試着用express.vhost
但是我收到一個錯誤
是這樣的:像虛擬主機最中間件不再與Express捆綁在一起,大部分都是單獨安裝。
感謝您的幫助!
我試圖將3節點js服務器合併爲一個。如何將xmpp服務器集成到節點js應用程序中?
我要整合應用server.How最後兩個服務器可以我這樣做,我試着用express.vhost
但是我收到一個錯誤
是這樣的:像虛擬主機最中間件不再與Express捆綁在一起,大部分都是單獨安裝。
感謝您的幫助!
經過下面的評論,解釋說您希望所有「應用程序」同時啓動,我建議您使用一個'bootstrap'文件啓動所有應用程序,並通過您想要偵聽的端口。有關一個非常簡單的示例,請參閱this github repo,該示例通過要求執行應用程序特定配置的單個文件從單個文件index.js
啓動兩個快速應用程序。
您可以將任何您想要的任何東西附加到各個應用程序module.exports
,以便您可以從父引導程序文件中的代碼中將它們全部控制爲一個組。
對於那些尋找一個解決方案由提問者報告錯誤,下面詳細介紹瞭如何解決錯誤報告;但不能解決提問者的問題
按照該documentation on the express 3.x to 4.x changes和答案this question (though the middleware is different)現在虛擬主機不再與快遞捆綁它必須是require
d和單獨使用 - 它不會對你的express
實例註冊本身正在使用,所以你不能再使用express.vhost
方法。
從,這是相關線路:
var vhost = require('vhost')
//...
// add vhost routing to main app for mail
app.use(vhost('mail.example.com', mailapp))
好吧..我會說在另一種模式...我有在本地主機運行的bosh應用程序:5280 ..我有本地主機上運行的serverClient應用程序:5000..以及在localhost上運行的mainApp:3000.I想要當我開始主應用程序啓動下兩個應用程序(運行在5000和5280)... – marian
好吧 - 爲了澄清 - 你有三個先前分開的應用程序,你已經把一個代碼庫,和你(當你啓動您的應用程序)想要同時收聽所有端口?如果是這樣的話,應用程序不需要以代碼連接;如果您希望所有應用程序都由相同的引導程序文件啓動,只需在每個啓動主引導程序/索引中的每個應用程序的文件中進行操作即可。 – Benjamin
我不知道該怎麼做......請給我一個小例子 – marian
你有沒有運行在應用程序服務器的根「故宮安裝虛擬主機」? https://github.com/expressjs/vhost#install – Benjamin
是的,我已經安裝了它! – marian
好的,添加了一個答案,可以指導您解決所需的問題。 – Benjamin