2014-03-05 183 views
0

Heroku Dev Center文章Using WebSockets on Heroku with Node.js解释了如何部署使用Express的Node.js Websocket Test demo applicationHeroku Node.js WebSocket服务器

但是,我正在部署不使用Express的Node.js WebSocket chat server

当我尝试从终端连接wscat -c ws://my-app.herokuapp.com/1,我得到error: Error: unexpected server response (503)。并且,heroku logs返回code=H14 desc="No web processes running"

为什么?我该如何解决?

注意:我的Procfile是正确的:web: node server.js

回答

1

解决方案:删除&重新创建应用程序

我改变了Node.js WebSocket chat server到第一行:

var webSocketServer = new (require('ws')).Server({ 
     server: require('http').createServer(function (request, response) { 
     response.end() 
     }).listen(process.env.PORT || 5000) 
    }), 

仍然没有奏效。

然后,我删除了&重新创建了Heroku应用程序并进行了部署。工作。

然后,我改变了第一线回:

var webSocketServer = new (require('ws')).Server({port: (process.env.PORT || 5000)}), 

和重新部署。仍然有效!

0

您可以使用curl -vD连接以获得有关您的服务器正在发送的标头的详细信息吗?