2012-05-09 6 views
18

Tengo Rails 3.2.3 con Apache y Passenger.Lo sentimos, pero algo salió mal. - con Rails, Apache, Passenger

Tengo un proyecto trabajando en modo de desarrollo. Cuando cambio el proyecto al modo de producción (Passenger estándar) me da una HTTP Error 500:

Lo sentimos, ha ocurrido un error.

Esto ocurre incluso con WEBrick. ¿Alguien puede ayudarme?

Editar:

Mi archivo entorno de producción: http://pastebin.com/ZAudSzkc

+0

¿Ha construido correctamente su archivo de entorno de producción? Si es así, muéstreme. – Kashiftufail

+0

publicó el archivo production.rb en el hilo principal. pero, ¿a qué te refieres con construir correctamente? –

+1

compruebe el archivo de registro de producción que dará más información sobre el error –

Respuesta

28

Asegúrese de que ha corrió $:. bundle install si esto no tiene éxito ir a su entorno de producción y conectarse a su servidor usando ssh y en $:. tail -f log/production.log su aplicación de producción actual.

Esto generará una salida que podría mostrar un error.

si esto no muestra un error en el registro/directorio, haga $:. ls -la si hay archivos passenger.error abiertos y busque errores allí.

esperanza que esto le ayudó a salir


Además de log/production.log, también se debe buscar en el registro de errores del servidor web, por lo general /var/log/apache2/error.log o /var/log/nginx/error.log. Algunos errores se escriben allí. Más información se puede encontrar en la sección de solución de problemas del manual del pasajero:

+0

Sí, me ayudó, tuve un error, debido a una entrada de base de datos y porque se ejecutó en modo de producción, la excepción no se mostró ... –

+1

FINALMENTE, ERRORES DE ALIMENTACIÓN EN VIVO ... GRACIAS – freedom

+0

Para mí, la "/ var /log/apache2/error.log "funcionó, el registro de producción estaba vacío. ¡Gracias! – lbramos

17

he tenido problemas con un tipo similar de problema y encontró que mediante el cambio de configuración .consider_all_requests_local a true en config/environments/production.rb, podría obtener el mensaje de error para mostrar en producción y ver cuál era el problema real. Obviamente, cámbialo una vez que hayas solucionado el problema.

+1

Esto proporcionaría una solución para las nuevas aplicaciones; sin embargo, le sugiero que no use este método cuando esté alojando una aplicación de alto tráfico. simplemente verificando el rastro de la pila de un error en su producción. El registro está más limpio. – dennis

1

Tuvimos el mismo problema, el mismo mensaje, el código de error 500, pero estaba en modo de desarrollo y no se registró nada útil. Y solo sucedió en una de mis instalaciones de universidades.

El problema eran los caracteres no ASCII (aquí: diéresis como ü, ß, etc.) dentro de las cadenas. Ahora simplemente traducimos todo con I18n.t('text_to_translate') (busque el archivo de traducción yaml correspondiente en/config/locales /, para obtener más información sobre I18N, vea http://guides.rubyonrails.org/i18n.html).

Cuestiones relacionadas