我在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
我相信我只需要设置生产端口即可?谢谢。
您可以显示调用的整个代码部分listen
吗?您应该检查过程环境变量PORT,而不仅仅是将其硬编码为3000。从他们的文档中:
var port = process.env.PORT || 3000;
app.listen(port, function() {
问题内容: 我已经在heroku雪松堆栈上成功运行resque并将接口安装在导轨上。 当我开始工作时,一切正常。工人处理工作。但是当我杀死工人时,Resque仍然认为该工人有空。当我启动另一个工作程序时,它认为有2个工作程序,但实际上只有一个正在运行。 我在这里也注意到了形式http://devcenter.heroku.com/articles/ps,heroku在杀死工人时会发送SIGTERM
我使用Kong Bitnami GCP堆栈(版本2.2.0)作为API网关:https://console.cloud.google.com/marketplace/product/bitnami-launchpad/kong 它在HTTP端口8000和HTTPS端口8443(默认配置)下运行良好。但是,当我尝试将生产环境的HTTP/HTTPS侦听端口更改为80/443时,请遵循以下链接:http
问题内容: 我使用以下行启动了node.js服务器来设置端口: 这意味着,它应该像本地运行时那样读取PORT env变量或默认为8080。它们都不在Heroku上发生,并且服务器始终使用默认端口80。如何更改该端口? 问题答案: 你不能 Heroku设置您应该绑定的PORT变量,并在tcp / 80上进行侦听。
问题内容: 有没有一种方法可以使node.js堆栈错误中的行数超过10条? 显示: 有没有办法接听超过10个电话? 问题答案: 最简单的解决方案是使用以下代码启动代码: 如果您希望查看跨越setTimeout / setInterval调用的堆栈跟踪,那么可以使用更复杂的https://github.com/mattinsler/longjohn。
我用Node.js设置了Socket.io,它通过侦听/连接到端口8000(或另一个不是服务器运行端口的端口)在本地开发机器上工作。 当我试图在heroku上做同样的事情时,客户端脚本导入失败了。 我尝试过相对路径 编辑:我实际上是在使用geddy mvc框架,我想让它在heroku上如何设置(基本上就像socket.io一样),我发现这个答案让我看起来可以类似地使用它:GeddyJS&socke
问题内容: 我有两组活动,假设每组3个活动,(A1,B1,C1 || A2,B2,C2)我从A1启动我的App,然后-> B1-> C1在这里我想从C1跳到-> A2在A2处,如果我按回去,它应该存在该应用程序,而不是退回给C1,然后从A2导航到-> B2-> C2。 因此,基本上我想更改启动的Activity,就像我在一个App中有两个App,而当我切换到第二个App时,我必须清除Activit