#javascript #node.js #express #heroku
#javascript #node.js #экспресс #heroku
Вопрос:
Я пытаюсь развернуть свой первый проект узла в heroku, но я получаю эту ошибку:
2020-09-29T04:24:09.365962 00:00 app[web.1]: production
2020-09-29T04:24:09.415266 00:00 app[web.1]: server is listening at port 40890
2020-09-29T04:24:09.942808 00:00 app[web.1]: DB connection succesfull
2020-09-29T04:25:03.400919 00:00 heroku[web.1]: Error R10 (Boot timeout) -> Web process failed to bind to $PORT within 60 seconds of launch
2020-09-29T04:25:03.433351 00:00 heroku[web.1]: Stopping process with SIGKILL
2020-09-29T04:25:03.559247 00:00 heroku[web.1]: Process exited with status 137
2020-09-29T04:25:03.607404 00:00 heroku[web.1]: State changed from starting to crashed
Я использую express и mongodb. вот код, который я использую :
const dotenv = require('dotenv');
const mongoose = require('mongoose');
dotenv.config({ path: './config.env' });
const app = require('./app');
require('dotenv').config();
const DB = process.env.DATABASE.replace(
'<PASSWORD>',
process.env.DATABASE_PASSWORD
);
mongoose
.connect(DB, {
useUnifiedTopology: true,
useNewUrlParser: true,
useCreateIndex: true,
useFindAndModify: false
})
.then(con => {
console.log('DB connection succesfull');
});
const PORT = process.env.PORT | 3000;
const server = app.listen(PORT, () => {
console.log(`server is listening at port ${PORT}`);
});
как решить эту проблему?Спасибо
Ответ №1:
Это проблема, неправильный порт использует его следующим образом
const PORT = process.env.PORT || 3000;
Ваш сервер запустился с неправильным номером ПОРТА, поэтому при проверке системы он не смог увидеть привязку вашего приложения к правильному порту