J'essaie de déployer ma première application Rails ici, et je suis coincé sur quelque chose depuis hier soir. Je rencontre des comportements étranges que je ne peux pas expliquer. Je cours Rails, Apache, Phusion Passenger, et pour le moment, SQLite 3. (Je passerai bientôt à MySQL.) Actuellement, il est hébergé sur une tranche EC2 trop petite exécutant Ubuntu Server 11.04 (Natty).Problème de déploiement de l'environnement Rails?
Lorsque je consulte l'adresse de la tranche EC2 dans le navigateur, j'obtiens l'avis Rails 500 par défaut. Voici ce qui est bizarre, cependant. Quand je queue /log/production.log
, je vois l'erreur suivante:
ActionView::Template::Error (SQLite3::SQLException: no such table: offers: SELECT "offers".* FROM "offers" WHERE (code = '') ORDER BY created_at desc LIMIT 25 OFFSET 0):
Alors, j'ai ouvert manuellement la base de données de développement SQLite3, et vu cette table là-dedans. La base de données production, cependant, n'a pas cette table. OK, donc j'obtiens des erreurs avec la base de données de production enregistrée dans le journal de production. L'application doit fonctionner en mode production, n'est-ce pas?
C'est ce qui me lance. Tout d'abord, il fonctionne en mode développement sur ma machine de développement et je n'ai pas modifié les fichiers quand je l'ai déployé. Je n'ai pas non plus utilisé d'outils de déploiement sophistiqués pour le déployer (ce qui a peut-être changé quelque chose à mon insu) - je viens de faire un simple git push
.
De plus, j'ajouté ce qui suit à mon httdp.conf VirtualHost config:
RailsEnv development
Aussi, quand je lance la console de rails, je peux obtenir ce qui suit:
irb(main):002:0> Rails.env
=> "development"
Ainsi, l'application vraiment devrait être en cours d'exécution en mode de développement, non? En fait, il semble penser (partiellement) que c'est, non?
Je ne sais pas vraiment ce qui se passe ici, et j'apprécierais vraiment des conseils d'experts.
Merci à tous.
Modifier - Quelques redémarrages du serveur plus tard, et maintenant la chose se bloque lorsque j'essaie de l'afficher dans un navigateur. En outre, Apache semble se bloquer lorsque j'essaie de le redémarrer (d'où le redémarrage du serveur), problème connexe, ou autre problème tout à fait?