Как исправить ошибку веб-развертывания Heroku (например, H10) из Node.js? - PullRequest
1 голос
/ 24 апреля 2019

Краткое описание проблемы

  • Я получил ошибку H10 при доступе к моему веб-сайту, который развернут из Heroku.
  • Работает на локальном сервере без проблем.
  • Ошибка произошла после того, как я обновил NPM и развернул его на Heroku.
  • Подробная ошибка NPM гласит: «Не удается найти модуль» и «Не удалось запустить скрипт»

Как мне исправить эту проблему?

Предыдущие подходы

Я искал решения этой проблемы и проверил настройки моего порта, procfile, package.json и .gitignore, но я все еще получаю сообщение об ошибке.

Примеры кодов

мои настройки порта в app.js

> let port = process.env.PORT; if (port == null || port == "") {   port
> = 3000; }
> 
> app.listen(port,function() {   console.log("Server started on port
> 3000"); });

package.json

> {   "name": "todolist-v1",   "version": "1.0.0",   "description": "", 
> "main": "app.js",   "scripts": {
>     "test": "echo \"Error: no test specified\" && exit 1",
>     "start": "node app.js"
> 
>   },   "author": "",   "license": "ISC",   "engines": {
>     "node": "10.14.2"
> 
>   },   "dependencies": {
>     "async": "^2.6.2",
>     "body-parser": "^1.18.3",
>     "date-and-time": "^0.6.3",
>     "ejs": "^2.6.1",
>     "express": "^4.16.4",
>     "jsqr": "^1.2.0",
>     "lodash": "^4.17.11",
>     "moment": "^2.24.0",
>     "mongoose": "^5.5.2"   } }

.gitignore

/node_modules
npm-debug.log
.DS_Store
/*.env

PROCFILE

web: node app.js

ошибка героку

2019-04-24T05:37:09.064416+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=young-thicket-75018.herokuapp.com request_id=8d2ebd1c-0e87-4048-aa63-667672ad11a2 fwd="129.128.60.85" dyno= connect= service= status=503 bytes= protocol=https

Ошибка NPM

Error: Cannot find module '../wireprotocol/constants'
    at Function.Module._resolveFilename (internal/modules/cjs/loader.js:581:15)
    at Function.Module._load (internal/modules/cjs/loader.js:507:25)
    at Module.require (internal/modules/cjs/loader.js:637:17)
    at require (internal/modules/cjs/helpers.js:22:18)
    at Object.<anonymous> (/app/node_modules/mongodb-core/lib/sdam/topology_description.js:5:24)
    at Module._compile (internal/modules/cjs/loader.js:689:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:700:10)
    at Module.load (internal/modules/cjs/loader.js:599:32)
    at tryModuleLoad (internal/modules/cjs/loader.js:538:12)
    at Function.Module._load (internal/modules/cjs/loader.js:530:3)
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! todolist-v1@1.0.0 start: `node app.js`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the todolist-v1@1.0.0 start script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
...