繁体   English   中英

node-http-proxy websocket超时与Socket.io

[英]node-http-proxy websocket timeout with Socket.io

由于某种原因,http-proxy导致每2分钟后基于socket.io的websocket连接重新连接。 在重新连接之前,消息在客户端和服务器之间正常工作。 如果我绕过代理,websocket连接无需重新连接即可运行。 代理配置非常基础,并遵循nodejitsu的示例。

var http = require('http'),
  httpProxy = require('http-proxy');

var options = {
  hostNameOnly: true,
  router: {
    'example.com/sockets/': '127.0.0.1:9001'
  }
};

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

我也尝试在配置中更改超时选项,但这对重新连接问题没有影响。

timeout: 120000 // override the default 2 minute http socket timeout value in milliseconds

软件版本:Ubuntu 12.04服务器,node.js 0.8.16,http-proxy 0.8.7,socket.io 0.8.7。

这适用于开发Mac(10.8.3)和Ubuntu桌面12.04(虚拟机),但不适用于服务器。

在要传递给createServer的选项中设置超时。 socket.timeout用于套接字超时, options.proxyTimeout允许传出套接字超时,以便我们可以在初始请求时显示错误页面。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM