2017-09-26 9 views
0

私はRails 5.1、Phusion_Passenger、Nginxを持つサーバーを持っています。Rails 5.1 + Nginx + Phusion_PassengerのRails.application.database_configurationエラー

私はちょうどPhusion_Passengerでサーバーを起動すると、すべてが良いです:

=============== Phusion Passenger Standalone web server started =============== 
PID file: /project/tmp/pids/passenger.3000.pid 
Log file: /project/log/passenger.3000.log 
Environment: development 
Accessible via: http://0.0.0.0:3000/ 

You can stop Phusion Passenger Standalone by pressing Ctrl-C. 
Problems? Check https://www.phusionpassenger.com/library/admin/standalone/troubleshooting/ 
=============================================================================== 
[ N 2017-09-26 15:13:06.4195 8753/T5 age/Cor/SecurityUpdateChecker.h:374 ]: Security update check: no update found (next check in 24 hours) 

私はオーバーレイとしてnginxのと同じインスタンスを起動し、アクセスしようとすると、私は次のエラーを取得する:

App 8129 stdout: 
App 8129 stdout: 
[ E 2017-09-26 15:06:26.4848 1774/T1l age/Cor/App/Implementation.cpp:304 ]: Could not spawn process for application /project: An error occurred while starting up the preloader. 
    Error ID: e18b79ab 
    Error details saved to: /tmp/passenger-error-YkowRo.html 
    Message from application: Cannot load `Rails.application.database_configuration`: 
undefined method `[]' for nil:NilClass (NoMethodError) 
    (erb):13:in `<main>' 

Nginxでレールアプリを読み込むと、 "Rails"オブジェクトにアクセスできないようです。

+0

環境変数を使用してDBの詳細を渡していますか?もしそうなら、それらをあなたのnginx設定で指定しましたか? –

+0

環境変数としては何も改良されていません。ストック標準のconfig/database.ymlファイル。 – user1789782

答えて

0

搭乗者には、passenger.confにデフォルト環境が設定されていません。この変数を追加し、問題を修正しました。

passenger_app_env development; 
+0

これは明らかに開発にのみ正しいことに注意してください。本番環境では、nginx統合のデフォルトである 'production' envを使用するべきです。 –

関連する問題