2012-05-07 4 views
0

Я размещаю несколько приложений Node на одном экземпляре AWS. Я использую apache с виртуальными хостами, но хочу использовать только Node. Прокси-узел node-http выглядит так, как будто он выполнит задачу, но я не могу заставить пересылку работать с прокси-таблицей.Объединение форварда и маршрутизатора для node-http-proxy

Вот как предполагается прокси стол для работы:

var options = { 
router: { 
    'app1.website.com': 'localhost:7100', 
    'app2.website.com': 'localhost:15110' 
} 
}; 

var proxyServer = httpProxy.createServer(options).listen(80); 

У меня есть APP1 и app2 работает на экземпляре и прослушивания 7100 и 15110 соответственно, но только с помощью опции маршрутизатора не разрешает пересылку.

я могу получить только один пересылать с помощью:

var options = { 
forward: { 
    port: 15110, 
    host: 'localhost' 
} 
}; 

var proxyServer = httpProxy.createServer(15110, 'localhost', options); 

Любая идея, как получить преимущества обоих? В документации говорится, что я могу передавать «вперед» и «роутер» через параметры, но неясно, как это сделать.

+0

Я развернул новый экземпляр AWS и последовал совету Алана Хоффмайстера - теперь все отлично работает! – randylubin

ответ

0

Вы пробовали 127.0.0.1 вместо localhost? И что вы имели в виду: «не позволяет проводить»? Какой-то узел-http-прокси-сервер - это внутренне проксировать запрос, а не пересылать его :)

+0

Пробовал использовать 127.0.0.1, но это не помогло. Параметры «router» просто не работают. Когда я сказал переадресацию, я имел в виду создание обратного прокси-сервера для других серверов узлов, работающих на портах 7100 и 15110, которые не подвержены клиенту. – randylubin