Frage

Ich muss Node.js für 3 Domänen verwenden. Wie kann ich es tun? Im Moment habe ich eine Anwendung, die Port 80 bindet. Wie unterstützt ich mehr als eine Domänen? Ich verwende auch das Cluster -Modul, das meine Anwendung in 3 Prozessen aufgibt.

War es hilfreich?

Lösung

Wahrscheinlich am besten, benutzen Sie Verbinden Sie Vhost, das ist ein Verbindungsmodul.

Oder: Sie können Ihre URLs mit einem globalen URL -Handler neu schreiben und dann Ihre Einschränkungen basierend auf der umgeschriebenen URL schreiben:

app.get('*', function(req, res, next){ 
  if(req.headers.host === 'domain1.com')
    req.url = '/domain1' + req.url;
  else if(req.headers.host === 'domain2.com')
    req.url = '/domain2' + req.url;
  next(); 
})

.get('/domain1/index', function(){ 

}) 

.get('/domain2/index', function(){ 

});

Andere Tipps

Verwenden https://github.com/nodejitsu/node-http-proxy.

Sie müssen den Reverse -Proxy auf Port 80 ausführen (vorausgesetzt, Sie verwenden HTTP und nicht HTTPS) und dann wird die Anforderung an verschiedene Dienste (dh Knode -Server) weitergeleitet. Der tatsächliche Knotenserver verwendet nicht standardmäßige Ports zum Anhören.

z.B

Service A (for domain A ) - 8001 
Service B (for domain B ) - 8002
Service C (for domain C ) - 8003.
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top