FastCGI - incomplete headers + 500 error
Posted by: garylin
Posted on: 2005-12-05 04:56:00
Hi,
I know this topic has been discussed before, but I tried every solutions still cannot solve it.
The thing is, I run my rails app in dreamhost, with FastCGI. (rails-0.14.3 + ruby-fcgi-0.8.6 + fcgi-2.4.0)
I can start my app, but I keep hitting 500 error randomly. That is, for the same page, I will get 500 sometimes, but ok after reload.
This is what I got from fastcgi.crash.log
[..] asked to terminate immediately
[..] terminated by explicit exit exit
And in apache log
... FastCGI: incomplete headers (0 bytes) received from server "/home/..../public/dispatch.fcgi"
I search all the forum on the web, and these are what I have done.
1) change public/.htaccess to RewriteRule ^(.*)$ dispatch.fcgi [QSA,L]
2) chmod 755 for dispatch.fcgi, and log directory
3) check the ruby path (#!/path/local/bin/ruby) in dispatch.fcgi
4) make sure dispatch.fcgi is not dos format (run dos2unix)
But it still doesn't work after I have done all of these.
Then I tried these
5) http://convergentarts.com/articles/2005/08/16/new-fcgi_handler-rb-cuts-500-errors-or-so
copy the lastest fcgi_handler.rb to lib
but actually it's unnecessary because that file is exactly the same as I have in rails 0.14-3
- still doesn't work
6) http://forum.textdrive.com/viewtopic.php?id=2972
according to this, fcgi has some problem from gem, so I uninstall fcgi gem, and make ruby-fcgi-0.8.6
from source.
- the 500 error times reduce, but will still hit it.
7) downgrade rails to 0.13.1, no help
8) try to run dispatch.fcgi manually
# ruby dispatch.fcgi
I got : Status: 500 Internal Server Error
Is that normal ? Can you run dispatch.fcgi manually?
That really drives me crazy.
I don't know what else I can try, please give me advise if you think of any.
Thanks!
Gary