如何使用节点js设置代理服务器?

时间:2013-12-06 04:58:20

标签: javascript node.js apache proxy

我使用节点js设置代理 我的脚本就像这样

var http = require('http'),
 httpProxy = require('http-proxy');
var options = {
  pathnameOnly: true,
  router: {
    '/wamp_application/': '127.0.0.1:80/',
    '/node_application': '127.0.0.1:1331',

  }
};


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

现在它的工作方式如下 当我访问127.0.0.1:8888/wamp_application时,我得到127.0.0.1:80 但我想要这样

127.0.0.1:8888/wamp_application/app1 - > 127.0.0.1:80/app1 127.0.0.1:8888/wamp_application/app2 - > 127.0.0.1:80/app2 127.0.0.1:8888/wamp_application/app3 - > 127.0.0.1:80/app3等等

我试过这个

  router: {
        '/wamp_application/*': '127.0.0.1:80/*',
        '/node_application/*': '127.0.0.1:1331/*',
       };

它不起作用。 实际上我想从同一个端口访问php和节点应用程序。 我怎么能这样做?

1 个答案:

答案 0 :(得分:0)

如果您只想转发到80以外的端口(反向代理),nginX是更好的选择。使用nginx.conf绑定您的应用程序。

请参阅:http://nginx.org/en/docs/http/ngx_http_proxy_module.html#proxy_pass