passenger phusion spawning error with rails app

拥有回忆 提交于 2019-12-14 02:27:48

问题


I'm running a rails 4 app on apache/passenger/ubuntu. The app runs fine when I comment out the config_serve.static.assets line in config/environments/production.rb, like this:

# Disable Rails's static asset server (Apache or NGINX will already do this).
# config.serve_static_assets = false 

Although it works, commenting out this line seems to be a bad idea, as I've read that the default value of the config variable is true, and it's supposed to be set to false when you're running an app behind apache or nginx. However, when I uncomment the line, the app doesn't start and I get the following error in the apache error log:

[Client 20] Cannot checkout session because a spawning error occurred. The identifier of the error is 108162e2. Please see earlier logs for details about the error.
App 10751 stdout:
App 10751 stderr:  --> Compiling passenger_native_support.so for the current Ruby interpreter...
App 10751 stderr:
App 10751 stderr:      (set PASSENGER_COMPILE_NATIVE_SUPPORT_BINARY=0 to disable)
App 10751 stderr:
App 10751 stderr:  --> Downloading precompiled passenger_native_support.so for the current Ruby interpreter...
App 10751 stderr:
App 10751 stderr:      (set PASSENGER_DOWNLOAD_NATIVE_SUPPORT_BINARY=0 to disable)
App 10751 stderr:
App 10751 stderr:      # tar xzf rubyext-ruby-2.1.3-x86_64-linux.tar.gz
App 10751 stderr:      # rm -f rubyext-ruby-2.1.3-x86_64-linux.tar.gz
App 10751 stderr:      Checking whether downloaded binary is usable...
App 10751 stderr:      # /usr/local/bin/ruby -I. test.rb
App 10751 stderr:      /usr/local/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require': libruby.so.2.1: cannot open shared object file: No such file or directory - /tmp/passenger-native-support-j3v7kx/passenger_native_support.so (LoadError)
App 10751 stderr:       from /usr/local/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require'
App 10751 stderr:       from test.rb:2:in `<main>'
App 10751 stderr:      Binary is not usable.
App 10751 stderr:  --> Continuing without passenger_native_support.so.
App 10751 stdout:
[ 2015-01-21 10:13:18.0841 10166/7fce0acf9700 Pool2/Implementation.cpp:287 ]: Could not spawn process for application /home/DFM: An error occured while starting up the preloader.
  Error ID: 4b40f65d
  Error details saved to: /tmp/passenger-error-tH49HR.html
  Message from application: undefined local variable or method `false ' for #<Dfm::Application:0x007f4afb293b30> (NameError)
  /home/DFM/config/environments/production.rb:24:in `block in <top (required)>'
  /usr/local/lib/ruby/gems/2.1.0/gems/railties-4.2.0.rc2/lib/rails/railtie.rb:210:in `instance_eval'
  /usr/local/lib/ruby/gems/2.1.0/gems/railties-4.2.0.rc2/lib/rails/railtie.rb:210:in `configure'
  /home/DFM/config/environments/production.rb:1:in `<top (required)>'

So my questions are (1) is it a problem to run the app with the config variable commented out (and therefore defaulting to true), and (2) if it is a problem, how to fix it?


回答1:


  1. It's not recommended but it's probably only a performance problem.
  2. The important error message there is hidden amongst a bunch of Passenger warnings:

    Message from application: undefined local variable or method `false ' for #<Dfm::Application:0x007f4afb293b30> (NameError)
    /home/DFM/config/environments/production.rb:24:in `block in <top (required)>'
    

I'm sure you've fixed this by now, but future Passenger users who come across this page might be distracted as you and I were by the warnings relating to Passenger Native Support, which are not relevant to the error itself.



来源:https://stackoverflow.com/questions/28071214/passenger-phusion-spawning-error-with-rails-app

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!