使用HTML部署Node.js时发生Heroku错误

对于Node.js和Heroku来说,最近刚刚成立了一个基本的hello世界,现在我试图让Node.js显示一个HTML文件,并且遇到了问题。 这是我的单个JS文件:

web.js

var express = require('express'); var app = express(); app.set('views', __dirname + '/views'); app.engine('html', require('ejs').renderFile); app.get('/', function(req, res) { res.render('about.html'); }); var port = Number(process.env.PORT || 5000); app.listen(port, function() { console.log("Listening on " + port); }); 

我的HTML文件在'/ views'中,只显示基本的文本/标题,在运行'node web.js'时运行FINE。 但是,当上传到Heroku并访问我的网站时,出现以下错误:

错误:无法在ServerResponse.res.render的Function.app.render(/app/node_modules/express/lib/application.js:508:17)视图目录“/ app / views”中查找视图“about.html” (/app/node_modules/express/lib/response.js:782:7)在Object.handle(/app/web.js:9:6)在next_layer(/ app / node_modules / express / lib / router / route。 js:103:13)at Route.dispatch(/app/node_modules/express/lib/router/route.js:107:5)at /app/node_modules/express/lib/router/index.js:213:24 at Function.proto.process_params(/app/node_modules/express/lib/router/index.js:284:12)在下一层(/app/node_modules/express/lib/router/index.js:207:19)。 expressInit [作为句柄](/app/node_modules/express/lib/middleware/init.js:23:5)在trim_prefix(/app/node_modules/express/lib/router/index.js:252:17)

我很困惑它说'/应用程序/视图',与原来的错误,该目录被命名为'/视图',但我改变它看看是否会帮助,无济于事。 我没有/ apps目录,是他们做的东西?

无论如何,只想在Heroku上使用Node.js从子文件夹中显示一些简单的HTML。 任何帮助表示赞赏。

在exception堆栈中,它说错误是在/app/web.js,所以我会说应用程序目录是在所有文件都存储在heroku的根目录,而不是一个视图存储,这将有意义的目录。 你可以确认的HTML文件确实上传到heroku?