Как обрабатывать более одного домена? - PullRequest
3 голосов
/ 30 ноября 2011

Мне нужно использовать Node.JS для 3 доменов.Как мне это сделать?На данный момент у меня есть одно приложение, которое связывает порт 80, как поддерживать более одного домена?Я также использую модуль кластера, который разветвляет мое приложение в 3 процессах.

Ответы [ 2 ]

2 голосов
/ 30 ноября 2011

Использование https://github.com/nodejitsu/node-http-proxy.

Необходимо запустить обратный прокси-сервер на порту 80 (при условии, что вы используете HTTP, а не HTTPS), а затем запрос будет перенаправлен на другие службы (например, серверы узлов).).Фактический сервер узла будет использовать нестандартные порты для прослушивания.

Например,

Service A (for domain A ) - 8001 
Service B (for domain B ) - 8002
Service C (for domain C ) - 8003.
2 голосов
/ 30 ноября 2011

Вероятно, лучший способ, использовать connect vhost , который является модулем подключения.

Или: вы можете переписать свои URL-адреса с помощью глобального обработчика URL-адресов, а затем написать свои ограничения на основепереписанный URL:

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(){ 

});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...