J'ai un problème sérieux avec l'un de nos serveurs Web ... Après avoir eu un alpha-test interne avec un cluster de Mongrel / Haproxy qui fonctionnait bien, nous voulions utiliser Nginx avec passager pour notre premier serveur de production (les clients accéderont à Ce serveur).
Cependant, je ne peux exécuter que l'application Rails via le mode de développement avec passager / nginx. p>
L'application elle-même est parfaite avec le MONGREL ou BEBRICK en mode de production. P>
Mon plus gros problème avec ce cas est que je ne trouve aucune information dans les journaux Nginx ou Rails (uniquement lorsque j'utilise Mongrel ou Webrick). P>
Les autorisations sont correctes. L'état passager indique que l'application est en cours d'exécution, mais je reçois toujours la page d'erreur statique 500.html ... p>
Ce serait si agréable si vous pouviez me donner un indice et m'aider à résoudre le Problème. P>
I Mettez la configuration au bas de la poste ... Cette configuration exacte fonctionne avec Merci beaucoup pour votre aide! P> Version:
Ubuntu 8.04.2 64bit /
nginx-0.7.64 (compilé et installé via Passagenenger-2.2.11) P> rails_env développement; code> mais je voudrais utiliser le mode de production ;-) P>
4 Réponses :
passager avec NGinx fonctionne en mode de production par défaut. Utilisez la commande Passenger-Install-Nginx-Module Code> pour installer NGinx compilé avec le module passager.
Êtes-vous sûr que vous avez créé et migré la base de données pour le mode de production?
rake db:create RAILS_ENV=production
rake db:migrate RAILS_ENV=production
Bonjour, merci pour votre réponse ... La base de données est correctement configurée et les autorisations de fichier doivent avoir raison, car NGinx + passagers fonctionne en mode de développement ... Avez-vous des indices où je peux trouver des messages de débogage / journal?
Je couronne des rails 2.3.5 sur passager derrière Nginx, et j'ai eu le même problème. Ma solution consiste toujours à basculer vers le mode de développement dans le mode passager / nginx ou de production dans Webrick pour déboguer, mais cela ressemble à vous avoir essayé les deux. P>
Avez-vous essayé de noter la ligne error_log connexes / error.log; code> dans votre nginx.conf? p>
Bonjour, merci pour votre réponse ... Quelle honte, le mode de développement est trop lent pour nous, nous voulons la mise en cache et toutes les choses ... Je n'ai pas déconnecté la ligne comme vous pouvez le voir dans le poste ci-dessus. Peut-être devons-nous vérifier ce qui est exactement le problème (mise en cache ou autre) en désactivant certaines caractéristiques et en réessayant ...
Je ne recommanderais pas de fonctionner en permanence dans le développement, juste temporairement pour trouver la cause de l'erreur. Quoi qu'il en soit, aussi loin que je peux dire, ceci est un virus de passagers. Frustrant.
Il suffit de supprimer config.ru à partir de votre annuaire d'applications p>
Le passager passe de rack aux rails et tout fonctionnera p>
C'est un bug dans les rails. Le middleware Failsafe n'afflère pas correctement le message d'erreur aux fichiers journaux. J'ai signalé et réparé cette question il y a quelques mois, mais ils n'ont pas encore publié: https://rails.lighthouseApp.com/projects/8994/tickets/3577-Failsafe-middleware-vould-flush-the-logger Appliquez le correctif vous-même et vous devriez pouvoir voir le message d'erreur dans les journaux. P>
Oh, j'ai oublié, les rails sont la version 2.3.5
Je ne connais pas le passager, mais je sais que Nginx ... ne devriez-vous pas avoir
Localisation code> sous
serveur code>?
Et vous manquez une fermeture
} code> sur serveur ou http
merci pour vos commentaires ... je pense avoir raté le} parce que je voulais raccourcir le code de configuration .... Il y avait beaucoup d'exemples commentés dans mon fichier de configuration que j'ai supprimé ... Toutefois, le fichier de configuration devrait être Valide parce que j'ai dit qu'il fonctionne parfaitement en mode de développement, l'erreur n'est probablement pas de Nginx!