【问题标题】:Error while deploying Node.js App to Heroku将 Node.js 应用程序部署到 Heroku 时出错
【发布时间】:2017-09-14 18:46:55
【问题描述】:

在 Heroku 上部署我的 Node.js 应用时出现以下错误。

2017-04-18T18:40:10.158442+00:00 app[web.1]: npm 错误!请在任何支持请求中包含以下文件:

2017-04-18T18:40:10.158544+00:00 应用程序 [web.1]:npm 错误! /app/npm-debug.log

2017-04-18T18:40:10.237236+00:00 heroku[web.1]:状态从开始变为崩溃

2017-04-18T18:40:10.230110+00:00 heroku[web.1]:进程以状态 1 退出

2017-04-18T18:40:29.015395+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=nandu-varun-webdev.herokuapp .com request_id=11f3e405-089e-4bef-a83c-f190b042fbb7 fwd="216.15.126.238" dyno= connect= service= status=503 bytes= protocol=https

2017-04-18T18:40:29.282812+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=nandu-varun- webdev.herokuapp.com request_id=904f2f85-9c15-4601-bb9a-51a58c7544e1 fwd="216.15.126.238" dyno= connect= service= status=503 bytes= protocol=https

我的 package.json 文件如下

{
  "name": "web-dev",
  "version": "1.0.0",
  "description": "Web Dev",
  "main": "server.js",
  "dependencies": {
    "body-parser": "^1.15.1",
    "express": "^4.13.4",
    "mongoose": "^4.4.15",
    "multer":"^1.3.0",
    "q": "^1.4.1",
    "passport": "^0.3.2",
    "passport-local": "^1.0.0",
    "cookie-parser": "^1.4.1",
    "bcrypt-nodejs": "0.0.3",
    "node-uuid": "^1.4.7",
    "express-session": "^1.13.0"

  },
  "devDependencies": {},
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1",
    "start": "node server.js"
  },
  "author": "VN",
  "license": "ISC"
}

而我的Server.js文件如下:

var express = require('express');
var app = express();

var bodyParser = require('body-parser');
app.use(bodyParser.urlencoded({ extended: true }));
app.use(bodyParser.json());

// configure a public directory to host static content
app.use(express.static(__dirname + '/public'));

require ("./test/app.js")(app);
require ("./assignment/app.js")(app);
require ("./project/app")(app);

var port = process.env.PORT || 3000;

app.listen(port);

编辑:这些是我得到的完整日志

2017-04-19T11:38:05.924799+00:00 应用程序 [web.1]:npm 错误!如果你这样做了,这很可能是 web-dev 包的问题,​​

2017-04-19T11:38:05.925332+00:00 应用程序 [web.1]:npm 错误!您可以通过以下方式获取有关如何为此项目打开问题的信息:

2017-04-19T11:38:05.925449+00:00 应用程序 [web.1]:npm 错误! npm bugs web-dev

2017-04-19T11:38:05.925583+00:00 应用程序 [web.1]:npm 错误!或者,如果这不可用,您可以通过以下方式获取他们的信息:

2017-04-19T11:38:05.925712+00:00 应用程序 [web.1]:npm 错误! npm 所有者 ls web-dev

2017-04-19T11:38:05.925846+00:00 应用程序 [web.1]:npm 错误!上面可能还有额外的日志输出。

2017-04-19T11:38:05.930287+00:00 应用[web.1]:

2017-04-19T11:38:05.930497+00:00 app[web.1]: npm 错误!请在任何支持请求中包含以下文件:

2017-04-19T11:38:05.930608+00:00 应用程序 [web.1]:npm 错误! /app/npm-debug.log

2017-04-19T11:38:06.002754+00:00 heroku[web.1]:状态从开始变为崩溃

2017-04-19T11:38:05.995921+00:00 heroku[web.1]:进程以状态 1 退出

2017-04-19T14:44:20.909797+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=nandu-varun-webdev.herokuapp .com request_id=ab500e0f-0137-4b2f-ae8d-fb99c0849597 fwd="216.15.126.238" dyno= connect= service= status=503 bytes= protocol=https

2017-04-19T14:44:21.392032+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=nandu-varun- webdev.herokuapp.com request_id=6a277e5f-2329-45d1-82af-4a4cd170e028 fwd="216.15.126.238" dyno= connect= service= status=503 bytes= protocol=https

我就是想不通是什么问题,或者为什么我无法成功部署。

任何帮助将不胜感激

提前致谢

【问题讨论】:

  • 这些日志 ^^ 不是您需要的。进一步查看您的应用在崩溃时生成的堆栈跟踪。

标签: node.js mongodb express heroku


【解决方案1】:

您必须创建一个包含以下内容的 Procfile

web: npm start 

你加入了吗?

【讨论】:

  • 不,我没有,我该怎么做
  • 创建应该包含 web: npm start 的文件 Procfile。推一下,看看会发生什么
  • 虽然推荐,但只要运行npm start就不需要Procfile。默认情况下,如果未提供 Procfile,则 heroku 运行 npm start,因此可能原因是日志中不可见的其他原因。来自 heroku procfile documentation 部署以 Heroku 支持的大多数语言编写的应用程序不需要 Procfile。平台自动检测语言,并创建默认的 Web 进程类型来启动应用程序服务器。
猜你喜欢
  • 2016-04-08
  • 1970-01-01
  • 2017-02-04
  • 2015-09-22
  • 2015-12-09
  • 2020-04-06
  • 2019-06-25
  • 2020-04-06
相关资源
最近更新 更多