Richard L. wrote:
I’m trying to setup an app on Dreamhost and running into no end of
problems.
The app is running with edge rails and I’m currently getting the dreaded
‘Rails application failed to start’ white screen when trying to access
it.
I’ve gone through all the ‘gotchas’ and troubleshooting docs at
Dreamhost and the rails wiki to no avail.
Running script/console works fine.
Running script/server works fine (so I can access the site through port
3000)
Running dispatch.* from command line results in 500 error, which is what
is expected it it’s working as far as I can tell.
No entries are made in the rails logs, but in the Apache error log I get
the following:
[Tue May 9 06:29:01 2006] [error] [client 194.80.32.10] FastCGI: comm
with (dynamic) server
“/home/rlivsey/thatsprogress.com/2006.05.02/public/dispatch.fcgi”
aborted: (first read) idle timeout (120 sec)
[Tue May 9 06:29:01 2006] [error] [client 194.80.32.10] FastCGI:
incomplete headers (0 bytes) received from server
“/home/rlivsey/thatsprogress.com/2006.05.02/public/dispatch.fcgi”
From this the problem would appear to stem from fcgi, but I have no
idea what is wrong.
Any advice would be extremely welcome!
Thanks in advance.
I haven’t really got much to add to what Brian H. said above. Are you
certain the “hashbang” line in your dispatch.fcgi script is pointing to
the right copy of Ruby?
Log in via ssh, try to get to your site, then type “ps aux | grep
dispatch” in the shell window. Does your dispatch process show up? If
not, it’s somehow failing to start.
Like Brian, I’ve found it useful to ping my site periodically. I do it
with a script on my desktop box, instead of via a cron job. This way, I
know the frequency of errors, which seems to run about four a day. (User
voodoo ahead!) I think that what this accomplishes is to prevent my FCGI
process from getting swapped out. If it has to swap in to respond, it
times out, and the server starts another one, which can take 15-20
seconds.
Unlike Brian, I found that ignoring exit requests just led to a lot of
spare FCGI processes that I had to kill manually.
I think the performance of my site has improved since I set up an svn
repository on it, at which time it started being served by Apache 2.0
instead of 1.3.
I started using Dreamhost about the time they first tried to upgrade to
Rails 1.1. Having noted the stories of problems, and since I had plenty
of space, I built and installed my own copies of all the software I was
going to use. This may be overkill, but at least it doesn’t change out
from under me!
It did take some hacking and close monitoring, but I seem to get
reasonably acceptable performance now (on http://openprofile.net ).
Hope this helps! The first thing to do is to determine whether the FCGI
process is getting started correctly!
–Al Evans