我是一个反向代理网关,在云端使用express-http-proxy时效果很好。
但是,我一直试图让系统在localhost上运行,以便我可以更快地发展。
我希望我能成立:
Gateway on localhost:3001
API on localhost:3002
MobileWeb on localhost:3003
所有应用程序似乎都在localhost上的各自端口上工作,但是当通过express-http-proxy的请求获得504超时时。 我尝试将请求反向代理到互联网上的其他网站,并发现它有效,但是代理到localhost:3002,或localhost:3003并没有向他们转发任何内容。
app.get('/', expressProxy('localhost:3003', {
https: false, //don't use https on localhost
forwardPath: function(req, res){
return 'SplashPage';
}
}));
有什么建议吗?使用express-http-proxy包这是不可能的?
答案 0 :(得分:0)
似乎问题出在express-http-proxy上,并且它倾向于从代理目标中剥离端口并将其替换为:80
对于包含forwardPort选项的包而言,这将是一个很好的修复:
解决方案:我停止使用npm的express-http-proxy并将其换成npm的http-proxy。似乎更加强大,当然没有添加端口的问题。