#node.js #heroku #npm #web-deployment #package.json
#node.js #heroku #npm #веб-развертывание #package.json
Вопрос:
Я пытаюсь развернуть простой node.js приложение для heroku, но оно продолжает говорить мне, что «отсутствует скрипт: start» даже после добавления его в package.json моего packacge.json выглядит так:-
{
"name": "deploy_demo",
"version": "1.0.0",
"keywords": [
"util",
"functional",
"server",
"client",
"browser"
],
"author": "Babar",
"contributors": [],
"dependencies": {
"ejs": "^2.5.2",
"express": "^4.14.0"
},
"main": "main.js",
"scripts": {
"test": "echo "Error: no test specified" amp;amp; exit 1",
"start": "node main.js"
},
"license": "ISC",
"description": ""
}
мой код для моей точки входа:
main.js
Журналы Heroku: журналы heroku
Примечание: Это приложение отлично работает на локальном сервере, пожалуйста, помогите мне, я новичок в node.js , спасибо
Ответ №1:
Используйте process.env.PORT
для установки порта в любом Node.js Приложение Heroku.
Также убедитесь, что код, с которым вы работаете, localhost
тот же, что и в вашем приложении Heroku.
Ответ №2:
Вы не можете прослушивать пользовательский порт на Heroku, вы должны использовать process.env.PORT, чтобы они могли установить его для вас.
Ответ №3:
Похоже, вы убедились, что он package.json
похож,
"scripts": {
"start": "node main.js"
}
..и вы могли бы попробовать добавить Procfile с,
web: npm start
Кроме этого, если он работает только локально для вас, также убедитесь, что вы зафиксировали и отправили в Heroku, что-то вроде git push heroku master
.
В сторону: кстати, конвекция заключается в том, чтобы назвать вашу начальную точку как server.js
Ответ №4:
Попробуйте это
"scripts":{
"start":"node ."
}
а также использовать ПОРТ в env