将应用程序部署到Heroku-我收到内部服务器错误

时间:2019-01-24 13:05:17

标签: node.js mongodb express heroku

我处理了第一个应用程序,并查看了一个针对Mongo / Express / Node的教程。应用程序成功通过nodemon server.js在localhost端口:3000上工作。

我将GitHub与Heroku直接连接,每次都收到消息“内部服务器错误”。

如果有人知道问题所在,我将不胜感激。尽管该应用程序可以在计算机上运行,​​但我想学习如何在Heroku上部署它。

require("./models/db");

const express = require("express");
const path = require("path");
const exphbs = require("express-handlebars");
const bodyparser = require("body-parser");

const employeeController = require("./controllers/employeeController");

var app = express();
app.use(
  bodyparser.urlencoded({
    extended: true
  })
);
app.use(bodyparser.json());
app.set("views", path.join(__dirname, "/views/"));
app.engine(
  "hbs",
  exphbs({
    extname: "hbs",
    defaultLayout: "mainlayout",
    layoutsDir: __dirname + "/views/layouts/"
  })
);
app.set("view engine", "hbs");

app.listen(process.env.PORT || 3000, function () {
  console.log("Express server listening on port %d in %s mode", this.address().port, app.settings.env)
});

app.use("/employee", employeeController);

1 个答案:

答案 0 :(得分:0)

从您的帖子中,我只能猜测出许多可能是错误的事情。尝试在终端机上使用heroku logs -t(如果您已经在终端机上的heroku cli上登录)并评论看到的内容。可能是您的npm start命令正在使用nodemon(不应将其用于生产)。也可能是您的package.json中没有某些内容,因此未将其安装在Heroku上。如果您在该终端命令上发布了内容,我可能会进一步帮助您:)