2010-01-06 6 views
1

J'ai récemment joué avec des rails et je voulais passer par le processus de réduction afin de voir comment cela fonctionnait. J'ai créé une application simple avec un modèle de sIngle d'un échafaudage. Je l'ai téléchargé sur mon serveur et j'ai trouvé que j'avais besoin d'ajouter/public à l'URL pour obtenir l'écran «bienvenue sur les rails». Cependant, si j'ai essayé d'accéder à mon modèle (public/messages), j'ai juste une erreur 404. Quelqu'un peut-il me conseiller sur ce qu'il faut faire?Application de déploiement de rails

Mon serveur utilise des rails avec fcgi. Je m'excuse pour une question aussi simple, je n'ai pas utilisé de rails dans le passé et je ne suis pas encore tout à fait sûr de la façon dont cela fonctionne.

Un conseil apprécié.

Merci.

Répondre

0

Vous pouvez envisager de déployer votre application rails avec le module Apache de Passenger (aka mod_rails ou mod_rack), il est plus facile et a de meilleures performances que fcgi.

+0

Mon serveur est sur un hébergement partagé et je n'ai pas d'accès shell – Dan

0

La configuration des rails peut être difficile et varie énormément d'un hôte à l'autre. Mais si vous l'avez configuré correctement, vous ne devriez pas avoir à mettre/public dans votre URL./public est le répertoire par défaut. Donc, si vous cherchez l'index.html par défaut que les rails produit il devrait être # domain.com/index.html

Vous devrez vérifier avec votre hôte la façon correcte de télécharger et de configurer votre application.

0

Avez-vous simplement téléchargé l'application dans le répertoire de votre site Web ou utilisez-vous des liens symboliques? Normalement avec cgi/fcgi, il vaut mieux avoir l'application dans un répertoire non-web accessible, et un lien symbolique depuis votre public_html/(ou quel que soit le répertoire web appelé), qui pointe vers l'application /public/ annuaire. Cependant, il pourrait être possible de le faire fonctionner sans liens symboliques. Maintenant, les informations suivantes sont générales/génériques et englobent plusieurs hôtes Rails partagés populaires. Cependant, il est certainement possible que votre hôte ait des paramètres différents. Dans ce cas, il serait très utile si vous pouviez nous dire quel hôte vous utilisez.

Dans votre répertoire app/public /, il devrait y avoir un fichier appelé dispatch.fcgi. Tout d'abord, vérifiez que ce fichier est là. Le cas échéant, assurez-vous que le fichier est chmodded à 755 et essayez de changer la première ligne à:

#!/usr/bin/ruby18 

si elle est:

#!/usr/bin/ruby 

(. Cela peut varier en fonction de votre hôte)

Dans votre répertoire app/public /, vous devriez également avoir un fichier appelé .htaccess. Dans ce document, modifiez la ligne suivante:

RewriteRule ^(.*)$ /dispatch.cgi?$1 [QSA,L] 

à:

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

Si aucun de ces changements travail, s'il vous plaît publier le contenu complet de dispatch.fcgi, .htaccess et expliquer la structure des répertoires de votre compte d'hébergement. Comme indiqué précédemment, nous informer de l'hôte que vous utilisez serait certainement utile aussi.

+0

Salut, vais essayer que quand je reviens ce soir. Mon hôte est 34sp btw, je leur ai envoyé un e-mail demandant des conseils. – Dan

Questions connexes