ChiliProject is not maintained anymore. Please be advised that there will be no more updates.

We do not recommend that you setup new ChiliProject instances and we urge all existing users to migrate their data to a maintained system, e.g. Redmine. We will provide a migration script later. In the meantime, you can use the instructions by Christian Daehn.

Unable to locate passenger-spawn-server to start Passenger

Added by Steve Edwards at 2011-05-16 04:43 am

I've been banging my head against getting Chili installed with Passenger for a few days now, and can't seem to get past this error:

[error] *** Passenger could not be initialized because of this error: The Passenger spawn server script, '/usr/lib/ruby/gems/1.8/gems/passenger-3.0.7/lib/phusion_passenger/passenger-spawn-server', does not exist. Please check whether the 'PassengerRoot' option is specified correctly.

At one point I was able to get it running at http://myipaddress:3000 with Webrick, but now I can't even get that to work. I ran the passenger Apache install and copied the required lines to apache2.conf:

LoadModule passenger_module /usr/lib/ruby/gems/1.8/gems/passenger-3.0.7/ext/apache2/mod_passenger.so
PassengerRoot /usr/lib/ruby/gems/1.8/gems/passenger-3.0.7
PassengerRuby /usr/bin/ruby1.8

Running a find search gives me that script in the following locations:

/var/lib/passenger-standalone/3.0.7-x86_64-ruby1.8.7-linux-gcc4.4.5-1002/support/helper-scripts/passenger-spawn-server
/var/lib/gems/1.8/gems/passenger-3.0.7/helper-scripts/passenger-spawn-server
/usr/lib/phusion_passenger/passenger-spawn-server
/usr/lib/ruby/gems/1.8/gems/passenger-3.0.7/helper-scripts/passenger-spawn-server

and I have passenger.conf:

<IfModule mod_passenger.c>
  1. PassengerRoot /usr/local/rvm/gems/ruby-1.8.7-p334/gems/passenger-3.0.5
    PassengerRoot /usr/lib/ruby/gems/1.8/gems/passenger-3.0.7
    PassengerRuby /usr/bin/ruby1.8
PassengerDefaultUser chiliproject
&lt;/IfModule&gt;

This is my first delving into a Ruby app, so I'm nt really familiar with file locations. Any suggestions on what to check or change?

Thanks.


Replies (5)

RE: Unable to locate passenger-spawn-server to start Passenger - Added by Felix Schäfer at 2011-05-16 08:28 am

It seems you have different configuration leftovers from previous passenger installations that conflict. I'd suggest removing all passenger bits from your apache config, reinstall the passenger gem, rerun the passenger install and re-add the passenger config to apache (in only one place, having the same commands at different places is confusing at best).

RE: Unable to locate passenger-spawn-server to start Passenger - Added by Steve Edwards at 2011-05-16 04:04 pm

OK, I was wondering about having the same config in two places. So I should only have PassengerRoot and PassengerRuby defined in one place, and passenger.conf isn't needed?

RE: Unable to locate passenger-spawn-server to start Passenger - Added by Holger Just at 2011-05-16 04:32 pm

In Debian and Ubuntu, Apache modules are loaded and configured in /etc/apache2/mods-available/passenger.conf (and passenger.load). The are then enabled by calling a2enmod passenger, which creates some symlinks in /etc/apache2/mods-enabled.

You should stick the single line LoadModule passenger_module ... into /etc/apache2/mods-available/passenger.load and the configuration (all the stuff inside the IfModule) into /etc/apache2/mods-available/passenger.conf. It should like like described in the Install docs

Do yourself a favor and stick to the default structure. It makes your installation much more maintainable in the future.

RE: Unable to locate passenger-spawn-server to start Passenger - Added by Steve Edwards at 2011-05-16 06:37 pm

OK, I did as suggested: I re-installed the passenger gem, re-ran the passenger install and added the generated config options. In my /etc/apache2/mods-available/passenger.load I have

LoadModule passenger_module /usr/lib/ruby/gems/1.8/gems/passenger-3.0.7/ext/apache2/mod_passenger.so

and in /etc/apache2/mods-available/passenger.conf I have

<IfModule mod_passenger.c>
# PassengerRoot /usr/local/rvm/gems/ruby-1.8.7-p334/gems/passenger-3.0.5
 PassengerRoot /usr/lib/ruby/gems/1.8/gems/passenger-3.0.7
 PassengerRuby /usr/bin/ruby1.8

  PassengerDefaultUser chiliproject
</IfModule>

I seem to making progress, because now my error logs give me this error:

NOTE: SourceIndex.new(hash) is deprecated; From /usr/lib/ruby/gems/1.8/gems/rails-2.3.5/lib/rails/vendor_gem_source_index.rb:100:in `new'.

and I get a 500 error. Any thoughts? I'm Googling the error, but not getting anything.

RE: Unable to locate passenger-spawn-server to start Passenger - Added by Holger Just at 2011-05-16 06:50 pm

Steve Edwards wrote:

I seem to making progress, because now my error logs give me this error:

NOTE: SourceIndex.new(hash) is deprecated; From /usr/lib/ruby/gems/1.8/gems/rails-2.3.5/lib/rails/vendor_gem_source_index.rb:100:in `new'.

and I get a 500 error. Any thoughts? I'm Googling the error, but not getting anything.

This is because Rails 2.3.5 (which is used by the current ChiliProject stable) is not fully compatible with Rubygems > 1.6. Use an older version of Rubygems, e.g. 1.6.2. As Rubygems gets developed further, it becomes harder and harder to keep compatibility wih the current Rails version. Because of this, we will switch to Rails 2.3.11 in the upcomming 2.0.0 release.

(1-5/5)