繁体   English   中英

Rails应用程序产生的乘客Phusion错误

[英]passenger phusion spawning error with rails app

我正在Apache / Passenger / Ubuntu上运行Rails 4应用程序。 当我注释掉config / environments / production.rb中的config_serve.static.assets行时,该应用程序运行良好,如下所示:

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

尽管行得通,但注释掉这一行似乎不是一个好主意,因为我已经了解到config变量的默认值为true,并且当您在apache或nginx之后运行应用程序时,应该将其设置为false 。 但是,当我取消注释该行时,该应用程序无法启动,并且在apache错误日志中出现以下错误:

[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)>'

所以我的问题是(1)在配置变量被注释掉的情况下运行应用程序是否有问题(因此默认为true),以及(2)如果有问题,如何解决?

  1. 不建议这样做,但这可能只是性能问题。
  2. 那里的重要错误消息隐藏在许多乘客警告中:

     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)>' 

我确定您现在已经解决了此问题,但是将来遇到此页面的乘客用户可能会因为您本人而分心,因为我和乘客本机支持相关警告与错误本身无关。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM