2012-04-02 7 views
25

Ziemlich sicher, dass einige Leute dieses Problem zuvor kennenlernten.Heroku Error H14 (Keine Webprozesse ausgeführt)

Befolgen Sie alle Anweisungen zum Einrichten von Knoten und NPM. Wenn man nach Heroku schob, gab es keine Fehler. Aber wenn ich die App öffnen, zeigt es "Anwendungsfehler"

heroku ps 

kehrt

Process State  Command  
------- --------- ------------ 
main.1 up for 1m node main.js 

während

heroku logs 

kehrt

Error H14 (No web processes running) -> GET mewtwo.herokuapp.com/ dyno= queue= wait= service= status=503 bytes= 

Ich habe versucht einen Neustart der App mit heroku restart aber st krank bekomme den gleichen Fehler. Google herum und es gab keine andere Lösung als heroku restart. Jeder hat andere Methoden ausprobiert?


Antwort: (ich es hier, da mein rep zu niedrig ist die Antwort noch zu schreiben)

Ok dachte, es endlich selbst.

Offenbar in der procfile, erklärte ich

main: node main.js 

aber Heroku verwendet

web: node main.js 

Ich dachte, die Namensgebung, was Sie wollen sein kann, aber es ist eigentlich streng, was Sie brauchen Web verwenden damit es funktioniert (heroku hat das nicht betont - sei vorsichtig), zumindest für den Moment, bis ich herausgefunden habe, warum diese Strenge und wenn ich den Namen ändern kann.

+0

Sind Sie sicher, dass Sie gekauft zu laufen haben web- Arbeiterinstanzen? – sarnold

+0

muss ich kaufen? Ich folge nur dem Setup-Tutorial - https://devcenter.heroku.com/articles/nodejs, ich nehme an, es ist kostenlos, es sei denn, Sie möchten mehr hinzufügen? –

+0

fand das Zitat, „mehr als ein dyno für einen längeren Zeitraum laufen können Gebühren auf Ihrem Konto entstehen“. Ich betreibe nur einen. –

Antwort

13

Der Name Ihres Webprozesses muss web lauten. Dies ist der Prozess, den Heroku bei der Erstbereitstellung immer auf "1" skaliert.

Weitere Dienstleistungen im procfile kann aufgerufen werden, was Sie wollen, aber Sie müssen sie zunächst skalieren (so können Sie dev nur Prozesse dort haben, wenn Sie möchten).

Weitere Informationen hier: http://neilmiddleton.com/the-procfile-is-your-friend/ (die Cache-Version: https://web.archive.org/web/20130926005616/http://www.neilmiddleton.com/the-procfile-is-your-friend)

+0

Ich möchte hinzufügen, dass, wenn er wirklich einen benannten Prozess als „main“ haben wollen, ist, die nichts mit dem Internet zu tun hat (für Arbeitsprozess, sollte es keine http-Routing sein), er es 0 durch Skalierung Web = tun könnte main = 1 und dann neu starten –

+0

Keine Notwendigkeit zum Neustart bei der Skalierung. –

71

ich hatte das gleiche Problem, aber für mich war es, weil ich brauchte heroku ps:scale web=1

+11

Dies wird benötigt, wenn Sie zunächst vergessen, eine 'Procfile' zu ​​drücken. In diesem Fall hilft es auch nicht, wenn man einen nachher drückt oder 'heroku ps: restart' ausführt. – kynan

+3

Ich habe nach dem Hinzufügen einer Procfile nichts gesehen. aber dann legte man mit ps: scale web = 1 sofort los. Vielen Dank! – emilebaizel

+0

Ist mir passiert, nachdem ich eine App mit 'heroku fork' kopiert habe. –

Verwandte Themen