【发布时间】:2014-11-21 09:57:26
【问题描述】:
我们在运行 Apache (2.4.6) + Passenger + Rails 4.0.0 的虚拟服务器上有两个应用程序。
我们的服务器出现问题,由 ruby 进程消耗 100% 的 CPU 引起。重启服务器后,ruby进程不再运行,乘客也没有启动。
运行乘客状态我们得到错误:
/home/adm/.rvm/rubies/ruby-2.1.0/lib/ruby/site_ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require': cannot load such file -- phusion_passenger (LoadError)
from /home/adm/.rvm/rubies/ruby-2.1.0/lib/ruby/site_ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require'
from /usr/sbin/passenger-status:27:in `<main>'
我对乘客不是那么专业,所以我不知道发生了什么。
有什么建议吗?甚至要了解真正的问题是什么。
提前谢谢你
编辑
运行bundle show passenger
输出Could not find gem passenger
PAssenger 由 apache 在应用程序的虚拟主机中加载:
<VirtualHost *:80>
ServerName www.site1.it
ServerAlias site1.it
DocumentRoot /var/www/proj/current/public
LoadModule passenger_module /home/adm/.rvm/gems/ruby-2.1.0@dentist/gems/passenger-4.0.37/buildout/apache2/mod_passenger.so
<IfModule mod_passenger.c>
PassengerRoot /home/adm/.rvm/gems/ruby-2.1.0@dentist/gems/passenger-4.0.37
PassengerDefaultRuby /home/adm/.rvm/gems/ruby-2.1.0@dentist/wrappers/ruby
</IfModule>
RailsEnv production
PassengerLogLevel 3
PassengerMinInstances 1
<Directory /var/www/proj/current/public>
# This relaxes Apache security settings.
AllowOverride all
# MultiViews must be turned off.
Options -MultiViews
</Directory>
</VirtualHost>
<VirtualHost *:80>
ServerName www.site2.it
ServerAlias site2.it
DocumentRoot /var/www/proj/current/public
RequestHeader Set X-Sendfile-Type X-Sendfile
XSendFile On
LoadModule passenger_module /home/adm/.rvm/gems/ruby-2.1.0@police/gems/passenger-4.0.37/buildout/apache2/mod_passenger.so
<IfModule mod_passenger.c>
PassengerRoot /home/adm/.rvm/gems/ruby-2.1.0@police/gems/passenger-4.0.37
PassengerDefaultRuby /home/adm/.rvm/gems/ruby-2.1.0@police/wrappers/ruby
</IfModule>
RailsEnv production
PassengerLogLevel 3
PassengerMinInstances 1
<Directory /var/www/proj/current/public>
# This relaxes Apache security settings.
AllowOverride all
# MultiViews must be turned off.
Options -MultiViews
</Directory>
</VirtualHost>
【问题讨论】:
-
两个问题,请显示运行passnger的脚本,以及命令运行的结果:项目根目录的
bundle show passenger。
标签: ruby-on-rails ruby apache passenger