我在Heroku中的一个项目时遇到问题,该项目脱机工作完美,但其中一个页面未在部署的页面中找到
bin
--www
public
--images
--javascripts
--stylesheets
routes
--about.js
--contact.js
--index.js
--sendEmail.js
views
--include
----footer.ejs
----head.ejs
----nav.ejs
----popup1.ejs
----popup2.ejs
----popup3.ejs
----scripts.ejs
--contact.ejs
--about.ejs
--error.ejs
--index.ejs
.gitignore
app.js
package-lock.json
package.json
1.app.js
在这种情况下,所有的路由都连接到中间件,并且如预期的那样离线工作,
var createError = require('http-errors');
var express = require('express');
var path = require('path');
var cookieParser = require('cookie-parser');
var logger = require('morgan');
var indexRouter = require('./routes/index');
var contactRouter = require('./routes/contact');
var aboutRouter = require('./routes/about');
var emailRouter = require('./routes/sendEmail');
var app = express();
// view engine setup
app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'ejs');
app.use(logger('dev'));
app.use(express.json());
app.use(express.urlencoded({ extended: false }));
app.use(cookieParser());
app.use(express.static(path.join(__dirname, 'public')));
app.use('/', indexRouter);
app.use('/contact', contactRouter);
app.use('/about', aboutRouter);
app.use('/send', emailRouter);
});
});
module.exports = app;
该项目脱机工作,但在Heroku中,它显示了此错误。
1条答案
按热度按时间xytpbqjk1#
问题是联系人姓名是
Contact.ejs
而不是contact.ejs
。这种不区分大小写的做法在本地计算机上有效,但在Heroku上无效