Node.js 生产环境、SSL和socket.io错误

Node.js 生产环境、SSL和socket.io错误,node.js,express,nginx,socket.io,Node.js,Express,Nginx,Socket.io,上下文 我们最近投入生产了一台NodeJS服务器 我们使用用户Express 4.x和Socket.IO 1.x在同一端口上运行,如Socket.IO文档所述 它正在监听端口10000并使用Express+Socket.IO 在同一台机器上,我们有一个可以从NginX服务器访问的角度前端 NginX服务器具有从/api到NodeJS服务器的反向代理重定向 因此,当前端(角度)向/api发送请求时,它将获得所需的数据结果集 我们在/socket.io上添加一个重定向,即从端口80到端口10000

上下文

我们最近投入生产了一台NodeJS服务器

我们使用用户Express 4.x和Socket.IO 1.x在同一端口上运行,如Socket.IO文档所述

  • 它正在监听端口10000并使用Express+Socket.IO
  • 在同一台机器上,我们有一个可以从NginX服务器访问的角度前端
  • NginX服务器具有从/api到NodeJS服务器的反向代理重定向
  • 因此,当前端(角度)向/api发送请求时,它将获得所需的数据结果集
  • 我们在/socket.io上添加一个重定向,即从端口80到端口10000上的NodeJS服务器的socket.io库的轮询请求
  • 重定向非常有效,因为我在服务器上有很多请求
问题

实际上,我们可以在生产中访问/api。但是我似乎对/socket.io的调用有问题。事实上,每个轮询请求(在我们的例子中是如此之多)都会向我发送一个如下所示的堆栈

注意:我们在开发环境(Windows服务器)上没有这个问题,但在生产中的Debian上有这个问题

NB2:我们在NGINX(处理请求的反向代理)上使用SSL证书

错误

12)
  at next (/isp/www/effi-report.com/www/api/node_modules/express/lib/router/index.js:261:10)
  at query (/isp/www/effi-report.com/www/api/node_modules/express/lib/middleware/query.js:28:5)
  at Layer.handle [as handle_request] (/isp/www/effi-report.com/www/api/node_modules/express/lib/router/layer.js:82:5)
  at trim_prefix (/isp/www/effi-report.com/www/api/node_modules/express/lib/router/index.js:302:13)
  at /isp/www/effi-report.com/www/api/node_modules/express/lib/router/index.js:270:7
  at Function.proto.process_params (/isp/www/effi-report.com/www/api/node_modules/express/lib/router/index.js:321:12)
  at next (/isp/www/effi-report.com/www/api/node_modules/express/lib/router/index.js:261:10)
  at Function.proto.handle (/isp/www/effi-report.com/www/api/node_modules/express/lib/router/index.js:166:3)
  at EventEmitter.app.handle (/isp/www/effi-report.com/www/api/node_modules/express/lib/application.js:170:10)
  at Server.app (/isp/www/effi-report.com/www/api/node_modules/express/lib/express.js:28:9)
  at Server.<anonymous> (/isp/www/effi-report.com/www/api/node_modules/socket.io/node_modules/engine.io/lib/server.js:369:22)
  at Server.<anonymous> (/isp/www/effi-report.com/www/api/node_modules/socket.io/lib/index.js:258:16)
  at Server.emit (events.js:98:17)
  at HTTPParser.parser.onIncoming (http.js:2108:12)
  at HTTPParser.parserOnHeadersComplete [as onHeadersComplete] (http.js:121:23)
  at Socket.socket.ondata (http.js:1966:22)
  at TCP.onread (net.js:527:27)
12)
下一次(/isp/www/effi report.com/www/api/node_modules/express/lib/router/index.js:261:10)
在查询时(/isp/www/effi report.com/www/api/node_modules/express/lib/middleware/query.js:28:5)
在Layer.handle[作为handle_请求](/isp/www/effi report.com/www/api/node_modules/express/lib/router/Layer.js:82:5)
在trim_前缀(/isp/www/effi report.com/www/api/node_modules/express/lib/router/index.js:302:13)
在/isp/www/effi report.com/www/api/node_modules/express/lib/router/index.js:270:7
位于Function.proto.process_params(/isp/www/effi report.com/www/api/node_modules/express/lib/router/index.js:321:12)
下一次(/isp/www/effi report.com/www/api/node_modules/express/lib/router/index.js:261:10)
位于Function.proto.handle(/isp/www/effi report.com/www/api/node_modules/express/lib/router/index.js:166:3)
位于EventEmitter.app.handle(/isp/www/effi report.com/www/api/node_modules/express/lib/application.js:170:10)
在Server.app(/isp/www/effi report.com/www/api/node_modules/express/lib/express.js:28:9)
在服务器上。(/isp/www/effi report.com/www/api/node_modules/socket.io/node_modules/engine.io/lib/server.js:369:22)
在服务器上。(/isp/www/effi report.com/www/api/node_modules/socket.io/lib/index.js:258:16)
在Server.emit上(events.js:98:17)
在HTTPParser.parser.onIncoming(http.js:2108:12)
在HTTPParser.parserOnHeadersComplete[作为onHeadersComplete](http.js:121:23)
位于Socket.Socket.ondata(http.js:1966:22)
在TCP.onread(net.js:527:27)

它似乎缺少实际的错误消息。这是我只能从nodejs控制台读取的信息