Il primo deploy di Heroku fallito `error code = H10`

Ho distribuito la mia app a Heroku. È un’app node.js + express + socket.io e questo è il file package.json

 { "name": "game_test", "author": "Ilya", "description": "A test app for our board game", "version": "0.0.1", "private": true, "scripts": { "start": "node app" }, "dependencies": { "express": "3.0.6", "jade": "*", "socket.io" : "*" }, "engines": { "node": "0.8.14" } } 

Questo è il registro che ottengo:

 heroku[router]: at=error code=H10 desc="App crashed" method=GET path=/ host=game-test-1.herokuapp.com fwd=37.26.146.185 dyno= queue= wait= connect= service= status=503 bytes= heroku[router]: at=error code=H10 desc="App crashed" method=GET path=/favicon.ico host=game-test-1.herokuapp.com fwd=37.26.146.185 dyno= queue= wait= connect= service= status=503 bytes= 

Cosa significa?

Trovato soluzione per me qui: errore Heroku + node.js (il processo Web non è riuscito a collegarsi a $ PORT entro 60 secondi dal lancio)

Nel mio caso la mia app si è arrestata in modo anomalo perché era difficile impostare PORT, invece di utilizzare la porta impostata da heroku dynamicly, a cui è ansible accedere con process.env.PORT

 app.listen(process.env.PORT || 3000, function(){ console.log("Express server listening on port %d in %s mode", this.address().port, app.settings.env); }); 

Ho appena avuto un problema simile con la mia app, ho avuto il problema dopo una migrazione del DB, dopo aver provato molte opzioni, quella che mi ha aiutato è stata questa:

 heroku restart 

(Usando Heroku toolbelt per mac)

nel mio caso aggiungendo process.env.PORT || 3000 process.env.PORT || 3000 al mio script del server http, risolto. Il mio log di heroku riportava l’errore “H20” e lo stato http 503.

Nel mio caso, ho trovato lo stesso errore perché esiste la differenza di versione di node e npm sulla mia macchina locale e definita nella versione package.json.

 "engines": { "node": "0.8", "npm": "1.2.x" } 

quando controllo usando

 node --version : v0.10.41 npm --version : 1.4.29 

quando aggiorno il mio pacchetto.json a

  "engines": { "node": "0.10.41", "npm": "1.4.29" } 

Funziona bene 🙂

Nel mio caso, il mio Procfile puntava al file sbagliato (bot.js che ho usato in precedenza) quindi, una volta aggiornato, l’errore era sparito.

Controlla anche la tua connessione al database. Ho dimenticato di cambiare la connessione al mio database da localhost e questo ha bloccato la mia app una volta che è stata trasferita su heroku.

Nel mio caso, ho ricevuto questo errore perché mi rifiuto di aggiungere un Procfile al mio nodo js e il mio “main”: “app.js” inizialmente puntava su un altro file js come principale. così facendo questi cambiamenti lo risolveranno per me

Ho ricevuto lo stesso errore sopra l’errore “app arrestato in modo anomalo” e H10 e i registri dell’app heroku non mostrano molte informazioni relative ai motivi del messaggio di errore. Poi ho riavviato i dynos in heroku e poi ha mostrato l’errore dicendo ulteriori parentesi graffe in uno dei file index.js nella mia configurazione. Il problema è stato corretto una volta rimosso e ridistribuito l’app su heroku.

Spero che questo sarà utile a qualcuno che si trova ad affrontare lo stesso problema.

Ho affrontato lo stesso problema e nessuna delle risposte di cui sopra mi ha aiutato. Quello che ho fatto è stato eseguire:

 node --version 

e nel pacchetto. json aggiungi la sezione motori con la versione del tuo nodo:

 { "name": "myapp", "description": "a really cool app", "version": "1.0.0", "engines": { "node": "6.11.1" } } 

La password contenuta in% l’ha rotta per me.

Ho avuto un errore di battitura

const PORT = process.env.PORT||'8080';

prima era

const PORT = process.env.port||'8080';