我将应用程序部署到了Heroku。这是一个node.js + express + socket.io应用,这是package.json文件

{
  "name": "game_test",
  "author": "Ilya",
  "description": "A test app for our board game",
  "version": "0.0.1",
  "private": true,
  "scripts": {
    "start": "node app"
  },
  "dependencies": {
    "express": "3.0.6",
    "jade": "*",
    "socket.io" : "*"
  },
 "engines": {
      "node": "0.8.14"
  }
}

这是我得到的日志:
heroku[router]: at=error code=H10 desc="App crashed" method=GET path=/ host=game-test-1.herokuapp.com fwd=37.26.146.185 dyno= queue= wait= connect= service= status=503 bytes=
heroku[router]: at=error code=H10 desc="App crashed" method=GET path=/favicon.ico host=game-test-1.herokuapp.com fwd=37.26.146.185 dyno= queue= wait= connect= service= status=503 bytes=

这是什么意思?

最佳答案

在这里找到我的解决方案:Heroku + node.js error (Web process failed to bind to $PORT within 60 seconds of launch)

就我而言,我的应用程序崩溃是因为我很难设置PORT,而不是使用heroku dinamicaly设置的端口,可以使用process.env.PORT访问该端口

app.listen(process.env.PORT || 3000, function(){
  console.log("Express server listening on port %d in %s mode", this.address().port, app.settings.env);
});

10-06 14:15
查看更多