Heroku雪松堆栈上的Node.js端口问题

我正在Node.js中运行一个基本的Express应用程序,并试图部署到Heroku。 该应用程序在本地正常工作,我相信我的设置与Heroku已经很好,直到启动服务器,我得到以下错误:

2011-09-21T16:42:36+00:00 heroku[web.1]: State changed from created to starting 2011-09-21T16:42:39+00:00 app[web.1]: Express server listening on port 3000 in production mode 2011-09-21T16:42:40+00:00 heroku[web.1]: Error R11 (Bad bind) -> Process bound to port 3000, should be 12810 (see environment variable PORT) 2011-09-21T16:42:40+00:00 heroku[web.1]: Stopping process with SIGKILL 2011-09-21T16:42:40+00:00 heroku[web.1]: Process exited 

这是目前我所有在我的app.js

 app.listen(3000); 

我也按照Heroku入门中所提到的来运行它。

 $ heroku config:add NODE_ENV=production Adding config vars: NODE_ENV => production 

我相信我只需要build立生产端口? 谢谢。

你可以显示你调用的所有代码段吗? 您应该检查进程环境variablesPORT,而不是将其硬编码为3000.从他们的文档 :

 var port = process.env.PORT || 3000; app.listen(port, function() {