2010-04-15 10 views
1

Je suis assez nouveau pour Rails et le Mac, et de faire mon premier ... DéployezRuby Rails Mongrel Sever ne pas servir OXS1.6

Je suis en train de mettre en place mes rails application sur une nouvelle marque Mini-serveur Apple exécutant OXS1.6 (Snow Leopard). Il fonctionne actuellement bien sur mon nouvel iMac i7 (même système d'exploitation).

Je commence bâtarde avec cette commande:

mongrel_rails start -e production -p 3000 -d -a 127.0.0.1 --debug 

Et il commence à donner cette sortie dans le journal/mongrel.log

** Daemonized, any open files are closed. Look at log/mongrel.pid and log/mongrel.log for info. 
** Starting Mongrel listening at 127.0.0.1:3000 
** Installing debugging prefixed filters. Look in log/mongrel_debug for the files. 
** Starting Rails with production environment... 
/Library/Ruby/Gems/1.8/gems/rails-2.3.5/lib/rails/gem_dependency.rb:119:Warning: Gem::Dependency#version_requirements is deprecated and will be removed on or after August 2010. Use #requirement 
/Users/danadmin/ServiceApp/ServiceApp/app/helpers/input_grid_manager.rb:9: warning: already initialized constant ID_PREFIX 
/Users/danadmin/ServiceApp/ServiceApp/app/helpers/input_grid_manager.rb:10: warning: already initialized constant ADD_ID 
** Rails loaded. 
** Loading any Rails specific GemPlugins 
** Signals ready. TERM => stop. USR2 => restart. INT => stop (no restart). 
** Rails signals registered. HUP => reload (without restart). It might not work well. 
** Mongrel 1.1.5 available at 127.0.0.1:3000 
** Writing PID file to log/mongrel.pid 

La sortie est la même sur mon iMac dev (y compris le avertissements). La différence est que l'accès http://127.0.0.1:3000 sur mon iMac sert la page de connexion de l'application. Où comme sur le mini-serveur mac accéder aux mêmes résultats dans cette erreur 500 texte de mongrel: "Nous sommes désolés, mais quelque chose s'est mal passé."

C'est comme si les rails ne fonctionnaient pas. Je suis assez bon pour comprendre les choses si j'ai des messages de fichier journal pour me diriger, mais mongrel.log n'a pas de message d'erreur (la sortie reste la même que ci-dessus), et le journal/production.log est vide (ce qui rend moi pense que les rails n'ont pas commencé?).

Mes gemmes sont toutes les mêmes versions entre les machines, tout comme le code de l'application; et il n'y a aucune indication que je peux voir dans l'un des journaux de mongrel_debug, sauf que rails.log sur le mini-serveur mac et l'iMac sont différents.

Après un démarrage et un accès unique, est le premier rails.log du mini-serveur mac:

D, [2010-04-15T13:45:34.870406 #6914] DEBUG -- : TRACING ON Thu Apr 15 13:45:34 +1200 2010 
Thu Apr 15 13:46:08 +1200 2010 REQUEST/
--- !map:Mongrel::HttpParams 
SERVER_NAME: 127.0.0.1 
HTTP_ACCEPT: application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5 
HTTP_CACHE_CONTROL: max-age=0 
HTTP_HOST: 127.0.0.1:3000 
HTTP_USER_AGENT: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_0; en-US) AppleWebKit/533.2 (KHTML, like Gecko) Chrome/5.0.342.9 Safari/533.2 
REQUEST_PATH:/
SERVER_PROTOCOL: HTTP/1.1 
HTTP_ACCEPT_LANGUAGE: en-US,en;q=0.8 
REMOTE_ADDR: 127.0.0.1 
PATH_INFO:/
SERVER_SOFTWARE: Mongrel 1.1.5 
SCRIPT_NAME:/
HTTP_VERSION: HTTP/1.1 
REQUEST_URI:/
SERVER_PORT: "3000" 
HTTP_ACCEPT_CHARSET: ISO-8859-1,utf-8;q=0.7,*;q=0.3 
REQUEST_METHOD: GET 
GATEWAY_INTERFACE: CGI/1.2 
HTTP_ACCEPT_ENCODING: gzip,deflate,sdch 
HTTP_CONNECTION: keep-alive 

Alors que sur mon iMac, il semble que le même, sauf pour l'ajout de la HTTP_COOKIE et la HTTP_IF_NONE_MATCH, voici rails.log de mon iMac

# Logfile created on Thu Apr 15 13:41:42 +1200 2010 by logger.rb/22285 
D, [2010-04-15T13:41:42.934088 #2070] DEBUG -- : TRACING ON Thu Apr 15 13:41:42 +1200 2010 
Thu Apr 15 13:42:05 +1200 2010 REQUEST/
--- !map:Mongrel::HttpParams 
SERVER_NAME: 127.0.0.1 
HTTP_ACCEPT: application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5 
HTTP_HOST: 127.0.0.1:3000 
HTTP_USER_AGENT: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_3; en-US) AppleWebKit/533.2 (KHTML, like Gecko) Chrome/5.0.342.9 Safari/533.2 
REQUEST_PATH:/
SERVER_PROTOCOL: HTTP/1.1 
HTTP_IF_NONE_MATCH: "\"216cc63ce3c1f286ef8dd4f18f354f6e\"" 
HTTP_ACCEPT_LANGUAGE: en-US,en;q=0.8 
REMOTE_ADDR: 127.0.0.1 
PATH_INFO:/
SERVER_SOFTWARE: Mongrel 1.1.5 
SCRIPT_NAME:/
HTTP_COOKIE: _ServiceApp_session=BAh7DDonY3VzdG9tZXJfbGlzdF9maWx0ZXJfam9iX3N0YXR1c19pZGn6Og9zZXNzaW9uX2lkIiU0ZTk1ZWZjMmViMGU3NjE2YzA0NDc2YTkxYzJlNDZiOToaY3VycmVudF9jdXN0b21lcl9uYW1lIilUSEUgQ1VTVE9NRVIgTkFNRSBORUVEUyBUTyBCRSBMT0FERUQ6EF9jc3JmX3Rva2VuIjFuT1JMUWk0NlZrWlM3c2lUN3BaWCs5NkhRajhxYnFwRnhzVHVTWXEvUWY0PToZam9iX2xpc3RfZmlsdGVyX3RleHQiADogam9iX2xpc3RfZmlsdGVyX2VtcGxveWVlX2lkafo6HmN1c3RvbWVyX2xpc3RfZmlsdGVyX3RleHQiAA%3D%3D--d01bc5d0b457ad524d16cb3402b5dfed9afce83d 
HTTP_VERSION: HTTP/1.1 
REQUEST_URI:/
SERVER_PORT: "3000" 
HTTP_ACCEPT_CHARSET: ISO-8859-1,utf-8;q=0.7,*;q=0.3 
REQUEST_METHOD: GET 
GATEWAY_INTERFACE: CGI/1.2 
HTTP_ACCEPT_ENCODING: gzip,deflate,sdch 
HTTP_CONNECTION: keep-alive 

Toute direction ou idée serait grandement appréciée. Merci.

Répondre

0

J'espère que vous avez configuré la base de données pour votre application. Sinon, faites un rake db:create:all et migrez votre base de données rake db:migrate RAILS_ENV="production". Vous n'avez pas configuré de base de données pour la production.

Editer: Oui, il semble que vous ayez créé une base de données pour le développement mais pas pour la production. Donc, il fonctionnera bien sur un mode de développement (c'est-à-dire sur votre iMac), mais pas dans le mode de production. Créez une base de données pour votre mode de production en tapant la première commande comme indiqué ci-dessus.

+1

Merci pour votre réponse Paddy, ça m'a orienté dans la bonne direction, j'avais créé la base de données de production; mais devinez qui a oublié de cocher la case "Démarrer automatiquement MySQL au démarrage" dans le volet des préférences, et a également oublié qu'il a redémarré le serveur. Oui, c'était moi. Preuve que je ne devrais pas aller près d'un ordinateur quand je suis fatigué. J'apprécie le temps que vous avez passé à répondre à ma question. –

+0

Vous êtes les bienvenus :) –

+0

@Mark, Pourriez-vous marquer cela comme répondu, alors? –

0

Utiliser également des passagers pour le développement et la production. Il réduit les tracas de démarrer des bâtards de temps en temps. Vous pouvez également utiliser le préfpane passager pour lancer vos applications.