Passenger + Nginx => 502 Bad Gateway

我试图运行一个相对简单的rails应用程序(http:// www.enkiblog.com/),它有点作品。 当我使用“脚本/服务器-e生产”并连接到端口3000(但仍处于生产模式)时,注释和pipe理界面才起作用。

Nginx将在他的error.log中有这个:

2009/06/02 21:46:10 [error] 11536#0: *18 upstream prematurely closed connection while reading response header from upstream, client: 85.180.23.43, server: *.marc-seeger.de, request: "GET /admin HTTP/ 1.1", upstream: "unix:/tmp/passenger.11520/master/ helper_server.sock:", host: "www.marc-seeger.de" *** Exception NoMethodError in application (undefined method `each' for nil:NilClass) (process 14080): from /opt/ruby-enterprise-1.8.6-20090421/lib/ruby/gems/1.8/ gems/passenger-2.2.2/lib/phusion_passenger/rack/request_handler.rb: 85:in `process_request' from /opt/ruby-enterprise-1.8.6-20090421/lib/ruby/gems/1.8/ gems/passenger-2.2.2/lib/phusion_passenger/abstract_request_handler.rb: 203:in `main_loop' from /opt/ruby-enterprise-1.8.6-20090421/lib/ruby/gems/1.8/ gems/passenger-2.2.2/lib/phusion_passenger/railz/ application_spawner.rb:340:in `start_request_handler' from /opt/ruby-enterprise-1.8.6-20090421/lib/ruby/gems/1.8/ gems/passenger-2.2.2/lib/phusion_passenger/railz/ application_spawner.rb:298:in `handle_spawn_application' from /opt/ruby-enterprise-1.8.6-20090421/lib/ruby/gems/1.8/ gems/passenger-2.2.2/lib/phusion_passenger/utils.rb:181:in `safe_fork' from /opt/ruby-enterprise-1.8.6-20090421/lib/ruby/gems/1.8/ gems/passenger-2.2.2/lib/phusion_passenger/railz/ application_spawner.rb:296:in `handle_spawn_application' from /opt/ruby-enterprise-1.8.6-20090421/lib/ruby/gems/1.8/ gems/passenger-2.2.2/lib/phusion_passenger/abstract_server.rb:337:in `__send__' from /opt/ruby-enterprise-1.8.6-20090421/lib/ruby/gems/1.8/ gems/passenger-2.2.2/lib/phusion_passenger/abstract_server.rb:337:in `main_loop' from /opt/ruby-enterprise-1.8.6-20090421/lib/ruby/gems/1.8/ gems/passenger-2.2.2/lib/phusion_passenger/abstract_server.rb:187:in `start_synchronously' from /opt/ruby-enterprise-1.8.6-20090421/lib/ruby/gems/1.8/ gems/passenger-2.2.2/lib/phusion_passenger/abstract_server.rb:154:in `start' from /opt/ruby-enterprise-1.8.6-20090421/lib/ruby/gems/1.8/ gems/passenger-2.2.2/lib/phusion_passenger/railz/ application_spawner.rb:192:in `start' from /opt/ruby-enterprise-1.8.6-20090421/lib/ruby/gems/1.8/ gems/passenger-2.2.2/lib/phusion_passenger/spawn_manager.rb:257:in `spawn_rails_application' from /opt/ruby-enterprise-1.8.6-20090421/lib/ruby/gems/1.8/ gems/passenger-2.2.2/lib/phusion_passenger/ abstract_server_collection.rb:126:in `lookup_or_add' from /opt/ruby-enterprise-1.8.6-20090421/lib/ruby/gems/1.8/ gems/passenger-2.2.2/lib/phusion_passenger/spawn_manager.rb:251:in `spawn_rails_application' from /opt/ruby-enterprise-1.8.6-20090421/lib/ruby/gems/1.8/ gems/passenger-2.2.2/lib/phusion_passenger/ abstract_server_collection.rb:80:in `synchronize' from /opt/ruby-enterprise-1.8.6-20090421/lib/ruby/gems/1.8/ gems/passenger-2.2.2/lib/phusion_passenger/ abstract_server_collection.rb:79:in `synchronize' from /opt/ruby-enterprise-1.8.6-20090421/lib/ruby/gems/1.8/ gems/passenger-2.2.2/lib/phusion_passenger/spawn_manager.rb:250:in `spawn_rails_application' from /opt/ruby-enterprise-1.8.6-20090421/lib/ruby/gems/1.8/ gems/passenger-2.2.2/lib/phusion_passenger/spawn_manager.rb:153:in `spawn_application' from /opt/ruby-enterprise-1.8.6-20090421/lib/ruby/gems/1.8/ gems/passenger-2.2.2/lib/phusion_passenger/spawn_manager.rb:282:in `handle_spawn_application' from /opt/ruby-enterprise-1.8.6-20090421/lib/ruby/gems/1.8/ gems/passenger-2.2.2/lib/phusion_passenger/abstract_server.rb:337:in `__send__' from /opt/ruby-enterprise-1.8.6-20090421/lib/ruby/gems/1.8/ gems/passenger-2.2.2/lib/phusion_passenger/abstract_server.rb:337:in `main_loop' from /opt/ruby-enterprise-1.8.6-20090421/lib/ruby/gems/1.8/ gems/passenger-2.2.2/lib/phusion_passenger/abstract_server.rb:187:in `start_synchronously' from /opt/ruby-enterprise-1.8.6-20090421/lib/ruby/gems/1.8/ gems/passenger-2.2.2/bin/passenger-spawn-server:61 Error during failsafe response: closed stream 

任何想法?

ps debian 5.0

当你没有在SQLite数据库上设置适当的权限时,你可以从nginx得到这样的一个502错误。

原来这是一个乘客+ sqlite + nginx + unix的权限问题。
我通过迁移到MySQL来“解决”它