【发布时间】:2021-06-08 14:21:56
【问题描述】:
我在 Heroku 中托管我非常简单的 nodejs 服务器。但是,当我尝试它时,它会返回此错误:
应用程序错误 应用程序发生错误,无法提供您的页面。如果你是应用程序 楼主,查看你的日志了解详情。您可以在 Heroku CLI 中使用命令`
这是server.js:
const express = require("express");
const cors = require("cors");
const PORT = process.env.PORT || 80;
const server = express();
server.use(cors());
server.get("/", (req, res) => {
const INDEX = "/index.html";
res.sendFile(INDEX, { root: __dirname });
});
server.get("/test", (req, res) => {
res.send("test Page");
});
server.listen(PORT, () => console.log(`listening on port ${PORT}`));
package.json:
{
"name": "express-heroku",
"version": "1.0.0",
"description": "",
"main": "server.js",
"engines": {
"node": "15.11.x"
},
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"start": "node server.js"
},
"author": "",
"license": "ISC",
"dependencies": {
"express": "^4.17.1",
"mongoose": "^5.11.19"
},
"devDependencies": {
"nodemon": "^2.0.7"
}
}
不知道是什么原因,但是,当我在localhost 中尝试这个时,它完美地工作!
非常感谢任何帮助!
【问题讨论】:
-
就像它说的那样,查看日志以获取更多详细信息。如果没有错误消息,将很难调试。
-
这是我从 Heroku 控制台得到的结果 ->
2021-03-10T15:48:28.602246+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=creativity-server.herokuapp.com request_id=bb9535df-ae21-4198-88bc-8ba20c5d092d fwd="157.44.142.5" dyno= connect= service= status=503 bytes= protocol=https 2021-03-10T15:48:29.303442+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=creativity-server.herokuapp.com request_id=5f7a1b87-0fb7-42a0-a04a-3aab5d7b94a4 fwd="157.44.142.5" dyno= connect= service= status=503 bytes= protocol=https -
她的头像 -> i.stack.imgur.com/bgxJk.png
-
你是否正确设置了环境变量?
-
发现不用声明
PORTstackoverflow.com/a/52806264/14942924