0

我成功地将我的 node.js 应用程序部署到 heroku 但是当我访问该站点时出现错误提示 "Error R10 (Boot timeout) -> Web process failed to bind to $PORT within 60 seconds of launch"

我的代码是

var router = require("./router.js");

// Create a web server
var http = require("http");

http.createServer(function (request, response) {
  router.home(request, response);
  router.user(request, response);
}).listen(1337);
console.log("Sever running at http://127.0.0.1:1337/");

我认为这与端口有关。有一篇与我的问题Heroku + node.js error (Web process failed to bind to $PORT in 60 seconds of launch)类似的帖子, 但他们的解决方案基于 Express。我的应用程序没有使用 express。有没有其他方法可以不将端口设置为固定数字?

4

1 回答 1

1

用不用都无所谓express。Heruku 在process.env.PORT环境变量中为你绑定了一个端口。你需要像这样使用它:

var port = process.env.PORT || 1337

然后使用.listen(port)
确保您连接到浏览器中的正确端口(将端口记录到控制台以确保)

于 2018-02-25T19:07:46.360 回答