Einaros WS服务器 – 未实现的消息
使用Node JS + Einaros WS Server启动服务器并在浏览器上打开http:// serverIp:端口时,出现“ Not Implemented
”
模块文件WebSocketServer.js
文件如下所示:
if (options.isDefinedAndNonNull('port')) { this._server = http.createServer(function (req, res) { res.writeHead(200, {'Content-Type': 'text/plain'}); res.end('Not implemented'); }); this._server.listen(options.value.port, options.value.host, callback); this._closeServer = function() { self._server.close(); }; }
而不是发送这个Not implemented
消息,我怎样才能模拟不可用或页面不存在? 我不想让客户端弄清真正的serverIp / Port,因为它实际上是在haProxy负载均衡器后面工作的。
我想到以下两个选项:
-
最好的select很可能是用防火墙阻止haProxy以外的其他人的连接。
-
如果不行的话,我会用
res.socket.destroy()
closures底层套接字,以使客户端相信这个服务器不理解协议。
更新
改变这一点
this._server = http.createServer(function (req, res) { res.writeHead(200, {'Content-Type': 'text/plain'}); res.end('Not implemented'); });
对此
this._server = http.createServer(function (req, res) { res.socket.destroy(); });
它应该工作。