0

我在一个 AWS 实例上托管多个 Node 应用程序。我一直在使用带有虚拟主机的 apache,但只想使用 Node.js。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);

知道如何获得两者的好处吗?文档说我可以通过选项传递“转发”和“路由器”,但不清楚如何。

4

1 回答 1

0

你试过127.0.0.1代替localhost吗?“不允许转发”是什么意思?node-http-proxy 所做的是在内部代理请求,而不是转发它:)

于 2012-05-09T02:38:43.853 回答