116

アプリをHerokuにデプロイしました。これはnode.js+express + socket.ioアプリであり、これは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"
  }
}

これは私が取得するログです:

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=

どういう意味ですか?

4

29 に答える 29

244

ここで解決策が見つかりました:Heroku + node.jsエラー(Webプロセスは起動から60秒以内に$ PORTにバインドできませんでした)

私の場合、heroku dinamicalyが設定するポートを使用する代わりに、PORTを設定するのが難しいため、アプリがクラッシュしました。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);
});
于 2013-06-08T22:40:10.090 に答える
56

私は自分のアプリで同様の問題を抱えていました。DBの移行後に問題が発生しました。多くのオプションを試した後、私を助けたのは次のとおりです。

heroku restart

(Mac用のHerokuツールベルトを使用)

于 2016-01-12T14:46:18.927 に答える
15

私はこの問題を抱えていました、唯一の問題は私のProcfileがこのようなものだったということでした

web : node index.js

そして私はに変更しました

web:node index.js

唯一の問題はスペースでした

于 2019-02-20T15:54:48.543 に答える
6

私の場合、ローカルマシンにノードとnpmのバージョンの違いがあり、package.jsonバージョンで定義されているため、同じエラーが見つかりました。

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

使用して確認するとき

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

package.jsonをに更新すると

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

それはうまくいきます:)

于 2016-02-06T13:14:25.700 に答える
5

process.env.PORT || 3000私の場合、httpサーバースクリプトに追加して解決しました。私のherokuログは「H20」エラーと503httpステータスを報告しました。

于 2017-04-28T13:18:28.667 に答える
4

私の場合、Procfileが間違ったファイル(以前に使用したbot.js)を指していました。そのため、ファイルを更新すると、エラーはなくなりました。

于 2017-10-30T03:11:44.673 に答える
3

また、データベース接続を確認してください。データベース接続をローカルホストから変更するのを忘れました。これにより、アプリがherokuにプッシュされるとクラッシュしました。

于 2015-01-13T07:57:30.347 に答える
3

私の場合、package.jsonファイルのスクリプトセクションに開始コマンドがありませんでした。package.jsonでファイルを作成したときnpm init、スクリプトの開始コマンドを作成しませんでした。そこで、package.jsonファイルに移動し、スクリプトの下に新しいエントリを追加しました。

 "scripts": {
    "start": "node index.js"
  },

保存してHerokuにアップロードすると、機能しました

于 2019-09-30T21:54:38.600 に答える
3

hapi18を使用すると、「host」フィールドを取り出して、ポートを次のように設定していることがわかります。

port: process.env.PORT || 5000トリックをしました。

于 2019-10-09T05:58:28.943 に答える
3

古いスレッドですが、PORT定数をprocess.env.PORTに設定することでこの問題を修正します||

奇妙な理由で、最初にEnvを検索したかったのです。

于 2020-04-14T14:12:56.453 に答える
2

私はこれと同じ問題に直面しましたが、上記の答えはどれも役に立ちませんでした。私がしたことは実行されました:

node --version

そしてpackage.jsonに、ノードバージョンを含むenginesセクションを追加します。

{
  "name": "myapp",
  "description": "a really cool app",
  "version": "1.0.0",
  "engines": {
    "node": "6.11.1"
  }
}
于 2017-12-24T18:12:37.993 に答える
2

タイプミスがありました

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

以前は

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

于 2018-05-02T15:54:05.673 に答える
2

私が行ったように、によってノードサーバーをローカルで起動nodemonし、それがローカルで機能する場合は、を試してくださいnpm start。Nodemonは私にエラーを言っていませんでしたが、npm startは理解できる方法でそれらの多くを教えてくれました。それから、ここで別の投稿をフォローすることでそれらを解決できました。それが誰かに役立つことを願っています。

于 2019-06-18T16:55:59.007 に答える
1

私自身の場合、ノードjsアプリにProcfileを追加することを拒否し、「main」:「app.js」が最初に別のjsファイルをmainとして指していたため、このエラーが発生しました。だからこれらの変更を行うと私のためにそれを修正します

于 2017-10-13T23:03:25.943 に答える
1

私の場合、データベース環境をデプロイ用に設定するのを忘れていました。このコマンドでenvを設定できます(MongoDBサーバーにmLabを使用しています)

heroku config:set MONGO_URI ='mongodb:// address'

于 2018-12-14T22:00:07.193 に答える
1

私にとってはPackage.jsonでしたが、インストールしたと思っていても依存関係がありませんでした。そのため、最後に--saveオプションを指定して再インストールし、package.jsonに追加されたことを確認する必要がありました。もう一度押すと機能しました。

于 2019-02-07T22:35:06.577 に答える
1

私のポートはにconfig.httpPort解決されるように設定されました80。私はこれを行うことによってそれを修正しました:

const PORT = process.env.PORT || config.httpPort;

app.listen(PORT, ...)

どうもありがとうございました、昨夜は私に多くの時間を無駄にしました。

于 2019-02-19T09:54:35.637 に答える
1

私の場合、Procfileは次のように、 code=H10およびstatus=503でした。

web: node build/server.js

.gitignoreに/buildを含めました

于 2019-10-24T19:11:06.987 に答える
1

私のstartコマンドは持っていましたenv-cmd -f ./config/prod.env node index.js

に変更した後:node index.js修正されました。

于 2021-11-15T19:57:20.830 に答える
1

同じ問題が発生しました。問題は、プロファイルが次のようなものであったことです。

web: gunicorn__init__:app

上記では、gunicorn__init__の間にスペースがないことに注意してください

それ以外の web: gunicorn __init__:app

于 2022-01-24T14:27:21.983 に答える
0

上記の「アプリがクラッシュしました」と同じエラーが発生し、H10エラーが発生し、herokuアプリのログにエラーメッセージの理由に関連する情報があまり表示されません。次に、herokuでdynoを再起動すると、セットアップのindex.jsファイルの1つに中括弧が追加されているというエラーが表示されました。この問題は、Herokuにアプリを削除して再デプロイすると、修正されました。

于 2017-09-06T06:40:48.410 に答える
0

パスワードに%が含まれていました。

于 2018-01-20T06:33:19.820 に答える
0

H10エラーコードは多くの異なることを意味する可能性があります。私の場合、1回目は、HerokuがSqlite3と互換性がないことを知らなかったため、2回目は、本番環境だけでなく開発中のGoogleアナリティクスで誤ってアップデートをプッシュしたためです。

于 2019-03-20T21:53:50.297 に答える
0

古いスレッドですが、私にとっては.env、Herokuコンソールで変数を設定しませんでした。

于 2019-04-02T13:38:02.267 に答える
0

例外をスローするbody-Parserを使用していました

const bodyParser = require('body-Parser')    
//Bodyparser Middleware
app.use(bodyparser.json())

使用する代わりに

    //Bodyparser Middleware
    app.use(express.json())

これで私の問題は解決しました

于 2019-06-13T06:35:18.617 に答える
0

Githubに更新されていない単純なファイルであるこのエラーの解決策をここに登録したいと思います。

フルスタックプロジェクトがあり、ファイルはバックエンドのルートディレクトリとフロントエンドのクライアントの両方で構造化されています(React.jsを使用しています)。誤ってクライアントフォルダーをGithubにのみプッシュしていて、エラー(index.jsのオブジェクトのインスタンスにコンマがない)があったすべての変更がバックエンド側で更新されなかったという事実にすべてが帰着しました。このHerokuはGithubリポジトリからすべての更新をフェッチするため、サーバーにアクセスできず、エラーが解決しませんでした。次に、コミットしてルートディレクトリにプッシュし、プロジェクトのすべての変更を更新するだけで、すべてが再び機能するようになりました。

于 2019-09-12T18:02:57.703 に答える
0

私は何時間も同じエラーに苦しんでいますが、それを解決することができました。依存関係だけでなく、誤ってmulterとaws-sdkをdevDependenciesとしてインストールしました。したがって、同じエラーが発生した場合は、package.jsonファイルを再確認してください。

また、package.jsonのエンジンのプロパティに関する小さなヒント。

enter code here
//The greater or equal operators will make sure that you use the right node 
//version 
//even if your current node is greater version than npm node

"engines": {
"node": ">= 0.8.14"
},


//insted of
"engines": {
  "node": "0.8.14"
}
于 2020-01-13T23:18:12.537 に答える
0

このエラーが発生したとき、Python Djangoフレームワークをデプロイしていました。これは、web: gunicorn plaindjango.wsgi:application --log-file -代わりにアプリ名を入力するのを忘れたためです。plaindjango

于 2020-06-12T11:37:59.850 に答える
0

私にとっては、物事を不必要に別々のフォルダーに分割してしまいました。私はプロットダッシュを実行していて、、、ProcfileおよびPipfile(およびロック)を一緒に持っていましたが、アプリの他の機能とは別です(run.pyおよびapp.py、使用されているページの実際のコンテンツはサブフォルダーにありました)。その多くを一緒に参加させると、H10エラーが修復されました

于 2021-02-05T05:20:09.567 に答える