FCGI Issues on Dreamhost

Hey everyone,

I use DreamHost for my web hosting and have just setup the Mephisto
blogging engine at http://blog.hanabi.co.uk

At the moment I am receiving a Rails Application error message. I
contacted DreamHost support and they sent me the following;

Debugging your rails application is beyong our scope of support. Your
fastcgi.crash.logs contained the following errors. I can suggest that
you consult our member forum http://discussion.dreamhost.com. Often
times you can receive tips from users who have encountered similar
problems. If you have any additional questions, please let us know.

[08/Jan/2007:15:21:23 :: 4602] Dispatcher failed to catch: private
method ‘split’ called for nil:NilClass (NoMethodError)

/usr/lib/ruby/1.8/cgi.rb:897:in `parse’

…/config/…/vendor/rails/actionpack/lib/action_controller/cgi_ext/raw_post_data_fix.rb:45:in
`initialize_query’

/usr/lib/ruby/1.8/cgi.rb:2274:in `initialize’

/usr/lib/ruby/1.8/fcgi.rb:594:in `new’

/usr/lib/ruby/1.8/fcgi.rb:594:in `each_cgi’

…/config/…/vendor/rails/railties/lib/fcgi_handler.rb:141:in
‘process_each_request!’

…/config/…/vendor/rails/railties/lib/fcgi_handler.rb:55:in
‘process!’

…/config/…/vendor/rails/railties/lib/fcgi_handler.rb:25:in
‘process!’

./dispatch.fcgi:24

killed by this error

Rick O. who develops Mephisto assures me that this is not a Mephisto
error.

I have left a message on the DreamHost Discussion forum, but thought I
would post here as well to see if anyone has come up against a similar
error and perhaps knows of a solution?

Thanks,
Neil.

Run it with WEBrick on port 3000 and try to connect to it (that actually
does work on DH)

./script/server -e production

Also, check your production logs. Make sure the app actually is
running in
production too.

It took me a little finagling to get it working on DH, too. There are
specific instructions to follow to get it to work (i.e., did you
freeze edge to vendor? That was one of my problems):
http://mede.us/2006/12/1/mephisto-and-dreamhost

I think that’s the one I used.

–Jeremy

On 1/11/07, [email protected] [email protected] wrote:

fastcgi.crash.logs contained the following errors. I can suggest that
`initialize_query’
…/config/…/vendor/rails/railties/lib/fcgi_handler.rb:55:in
Rick O. who develops Mephisto assures me that this is not a Mephisto


My free Ruby e-book:
http://www.humblelittlerubybook.com/book/

My blogs:

http://www.rubyinpractice.com/

Hey Jeremy,

Thanks for the reply.

I also used that guide to get it setup on the server. The installation
ran okay using Terminal on Mac OSX, because at the end of the install -
I was told to then login to the admin page.

It seems that there are a few people having FCGI problems with other
apps on DreamHost.

Hey Brian,

Thanks for the reply.

I will certainly try the command that you have given. The production
log was actually empty (the last time I ran it) - apart from the
following message;

Logfile created on Sun Jan 07 07:09:58 -0800 2007 by

logger.rb/1.5.2.9

Rick O. said that means that no requests are actually being received.

Either that or you’re not running in production mode. Make sure you are.
Edit config/environment.rb and set the mode to production… some of my
apps on DH require that before I can run in prodction; others do not.

Heh, I’ve finally got the application working - in part.

I had to uncomment the following rule in the .htaccess file;

RewriteRule ^(.*)$ dispatch.fcgi [QSA,L]

Just checked the environment.rb file, and it seems to be set correctly.

ENV[‘RAILS_ENV’] ||= ‘production’

However, I have noticed at the top of the file that it says;

Be sure to restart your web server when you modify this file.

I originally edited the file before uploading any of the files for
Mephisto - as this was the first time I installed it. So I assume it
should automatically pick up the production environment?