私のアプリケーションで実行中の500エラーを診断するのは本当に苦労しています。私はそれ以前に働いていましたが、Capastranoを介して再展開した後、私はそれを得ることができません。500エラー(Rails、Passenger、Nginx、Postgres)を適切に診断するには
- サーバーはnginxの+乗客とのセットアップで、私は のPostgreSQLを使用しています:ここで
は事実です。
- スタティックアセットは正常に動作しているため、ブラウザで正常にアクセスできます。
RAILS_ENV=production bundle exec rails console
を介してレールコンソールにアクセスし、アクティブレコードアクション( のデータをdbから取得するなど)を実行できます。- コンソール内で
app.get("/")
を実行すると、50035エラーも返されます( のモデルをロードするために実行されたクエリを最初に表示した後)。 - production.logファイルに書き込まれることはありません。私はそれの地獄のためだけにそれにパーミッション777を設定しました。また、ログレベルを に設定しました。何も表示せずにデバッグします。
- nginxログ(乗客も使用する)はエラーの兆候を示さず、単にキャッシュミスについて通知します。
何も使用されていないので、私はここで何をすべきか分かりません。私は、ヘルプなしでアプリケーションディレクトリ全体の完全なアクセス許可を設定しようとしました。サーバーを何度も何度も再起動しました。データベースはそこにあり、レールはそれと明確に通信できます。私は最初にそれを実行するために何をしたのか分かりません。なぜレールが出力されないのか分かりません何かログに。
私はこれを試して、まずtmpディレクトリへの書き込みアクセスについて不平を言いましたが、それを修正してから、うまくいったのです。同じデータベースを使って設定しました。つまり、生産モードでは失敗します。 – Brian