2010-11-12 16 views
0

Je télécharge un site rails vers bluehost, un site qui fonctionne sur ma machine locale. Cependant, j'ai de la difficulté à le configurer pour fonctionner sur bluehost. Voici l'erreur que je reçois:Rails sur Bluehost: "Connexion réinitialisée par l'homologue" erreur mod_fcgid

[warn] [client 74.220.197.129] (104)Connection reset by peer: mod_fcgid: error reading data from FastCGI server 
[error] [client 74.220.197.129] Premature end of script headers: dispatch.fcgi ./../config/../vendor/rails/railties/lib/rails/gem_dependency.rb:119:Warning: Gem::Dependency#version_requirements is deprecated and will be removed on or after August 2010. Use #requirement 
./../config/../vendor/rails/railties/lib/initializer.rb:271:in `require_frameworks': 
RubyGem version error: rack(1.1.0 not ~> 1.0.1) (RuntimeError) from ./../config/../vendor/rails/railties/lib/initializer.rb:134:in `process' from ./../config/../vendor/rails/railties/lib/initializer.rb:113:in `send' from ./../config/../vendor/rails/railties/lib/initializer.rb:113:in `run' from ./../config/environment.rb:11 from dispatch.fcgi:21:in `require' from dispatch.fcgi:21 

J'ai déjà installé en rack 1.0.1, et renommant me donne .htaccess correctement une liste d'index des fichiers. Cela ressemble à une erreur .htaccess. Voici mon fichier .htaccess:

AddHandler fcgid-script .fcgi 
AddHandler cgi-script .cgi 
# For security reasons, Option followsymlinks cannot be overridden. 
# Options +FollowSymLinks +ExecCGI 
Options +SymLinksIfOwnerMatch +ExecCGI 

RewriteEngine On 
RewriteRule ^$ index.html [QSA] 
RewriteRule ^([^.]+)$ $1.html [QSA] 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule ^(.*)$ dispatch.fcgi [QSA,L] 

ErrorDocument 500 /500.html 

#ErrorDocument 500 "<h2>Application error</h2>Rails application failed to start properly" 

Qu'est-ce que je fais mal?

+0

Quelle version de Rails utilisez-vous? – rwilliams

+0

Pouvez-vous poster votre sortie de liste de gemmes? – rwilliams

Répondre

2

Ok, je fixe ce problème en procédant comme suit:

Ajouter ceci au fichier ~/.bashrc. ..

export GEM_HOME=$HOME/ruby/gems 
export GEM_PATH=$GEM_HOME:/usr/lib64/ruby/gems/1.8 
export GEM_CACHE=$GEM_HOME/cache 
export PATH=$PATH:$HOME/ruby/gems/bin 

... Votre commande ...

gem install rails --version=2.3.5 

... et en ajoutant thi s ligne vers le haut du fichier environment.rb ...

ENV['GEM_PATH'] = '/home8/opportx0/ruby/gems:/usr/lib64/ruby/gems/1.8' 

fonctionne enfin.

0

Votre application est à la recherche pour rack 1.1.0 ou plus et il recherche 1.0.1

+0

J'ai installé le rack 1.0.1, mais j'ai toujours le même problème. Cela ressemble à une erreur de serveur, pas une erreur de gemme ... cela fonctionne sur ma machine locale. – jakefuentes

+0

Je suppose que je lis ce faux. L'erreur indique que Rack 1.1.0 n'est pas supérieur à 1.0.1 ce qui n'a aucun sens. – rwilliams