node.js - 根据日志,Heroku 应用程序不断崩溃......为什么?

标签 node.js postgresql heroku crash

一旦我部署了应用程序并推送了本教程中的代码: http://blog.superpat.com/2011/06/14/node-js-chat-demo-on-heroku/

我从heroku收到此错误: “应用程序发生错误,无法提供您的页面。请稍后重试。

如果您是应用程序所有者,请检查您的日志以了解详细信息。”

这是我收到的日志错误:

2013-05-07T12:46:21.537628+00:00 app[web.1]: module.js:340
2013-05-07T12:46:21.537946+00:00 app[web.1]:     throw err;
2013-05-07T12:46:21.538118+00:00 app[web.1]:           ^
2013-05-07T12:46:21.540143+00:00 app[web.1]: Error: Cannot find module 'pg'
2013-05-07T12:46:21.540143+00:00 app[web.1]:     at Function.Module._resolveFilename (module.js:338:15)
2013-05-07T12:46:21.540143+00:00 app[web.1]:     at Function.Module._load (module.js:280:25)
2013-05-07T12:46:21.540143+00:00 app[web.1]:     at require (module.js:380:17)
2013-05-07T12:46:21.540143+00:00 app[web.1]:     at Object.<anonymous> (/app/server.js:22:10)
2013-05-07T12:46:21.540143+00:00 app[web.1]:     at Module._compile (module.js:456:26)
2013-05-07T12:46:21.540143+00:00 app[web.1]:     at Object.Module._extensions..js (module.js:474:10)
2013-05-07T12:46:21.540143+00:00 app[web.1]:     at Module.load (module.js:356:32)
2013-05-07T12:46:21.540143+00:00 app[web.1]:     at Module.require (module.js:364:17)
2013-05-07T12:46:21.540462+00:00 app[web.1]:     at Function.Module.runMain (module.js:497:10)
2013-05-07T12:46:21.540143+00:00 app[web.1]:     at Function.Module._load (module.js:312:12)
2013-05-07T12:46:22.755998+00:00 heroku[web.1]: Process exited with status 8
2013-05-07T12:47:21.212523+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path=/ host=nodechatclient.herokuapp.com fwd="72.229.150.213" dyno= connect= service= status=503 bytes=
2013-05-07T12:47:22.593111+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path=/favicon.ico host=nodechatclient.herokuapp.com fwd="72.229.150.213" dyno= connect= service= status=503 bytes=

我遵循了该教程 github 中的所有代码。

可能是什么原因造成的?和pg有关系吗?我应该在某个地方更改数据库路径吗?

当我尝试使用 Node server.js 在本地运行它时,我收到此错误:

Error: Cannot find module    '/home/euridice/node_modules/pg/lib/native/../../build/default/binding'
at Function.Module._resolveFilename (module.js:338:15)
at Function.Module._load (module.js:280:25)
at Module.require (module.js:364:17)
at require (module.js:380:17)
at Object.<anonymous> (/home/euridice/node_modules/pg/lib/native/index.js:16:13)
at Module._compile (module.js:456:26)
at Object.Module._extensions..js (module.js:474:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
at Module.require (module.js:364:17)

这是什么意思?

编辑:修复了一些问题,现在我得到:

events.js:72
    throw er; // Unhandled 'error' event
          ^
Error: FATAL:  password authentication failed for user "postgres"
FATAL:  password authentication failed for user "postgres"

at Connection.<anonymous>    (/home/euridice/node_chat/node_modules/pg/lib/native/index.js:187:17)
at Connection.EventEmitter.emit (events.js:95:17)

最佳答案

运行

npm install

本地,并将“node_modules”文件夹推送到heroku

编辑:我认为你误解了一些 git 和 herkoku 概念。你需要:

1. clone the repository: 'git clone git://github.com/metadaddy-sfdc/node_chat.git'
2. go into the repository: 'cd node_chat'
3. now you can run 'npm install' in THAT folder
4. after that you can create your heroku app: 'heroku create'
5. and deploy that to heroku: 
  5.1 git add .
  5.2 git commit -m "some comment"
  5.3 git push heroku master

你必须a)位于node_chat文件夹中,b)首先npm安装,然后将所有内容(git add .)推送到heroku!

关于node.js - 根据日志,Heroku 应用程序不断崩溃......为什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16419295/

相关文章:

postgresql - 需要在查询中捕获 NULL

ruby-on-rails - 如何从我的应用程序中启动 Heroku One-Off Dynos?

node.js - 在 Heroku 上存储二进制文件的好方法是什么?

ruby-on-rails - Heroku:编译的 Slug 大小太大

node.js - 多个 swaggerUi 与一个 express 应用程序

node.js - HTTP 请求流在请求处理程序之外不可读

postgresql - 如何在 PostgreSQL 中选择以 a-to-c 范围开头的用户名?

excel - self 更新电子表格

node.js - 通过公共(public)互联网保护 MongoDB

node.js - Nodejs + Express - 无法调用未定义的方法 'json'