ruby on rails - etc - "Respuesta incompleta recibida de la aplicación" de nginx/passenger
passenger nginx (8)
¿Hay alguien como yo que recibió este error después de cargar un archivo?
Mi solución es verificar el nombre del archivo que puede tener algunos caracteres especiales como `[(~ .
Simplemente quítelo y luego cargue el archivo nuevamente.
Buena suerte
Traté de implementar mi aplicación rails en nginx y ubuntu a través de capistrano como el tutorial en la página https://gorails.com/deploy/ubuntu/14.04 . pero al final recibo un mensaje de error:
Incomplete response received from application
en mi navegador Probablemente sea un error del pasajero, pero ¿cómo puedo averiguar qué hacer?
En mi caso, fue porque mi servidor se estaba quedando sin RAM de forma intermitente (durante la generación de PDF). Una vez que se generó el PDF, se restauró algo de RAM y el error desaparecería.
Tenía un servidor ubuntu con 500M de RAM.
Agregué un poco de espacio de intercambio y este error desapareció.
Este error se produce porque no configuró secret_key_base. Siga estos pasos para solucionarlo:
Vaya al directorio de la aplicación rails
cd /path/rails-app
Generar base de clave secreta
rake secret RAILS_ENV=production
Establecer variable de entorno
SECRET_KEY_BASE=<the-secret-key-base>
Reinicia la aplicación Rails
touch /path/rails-app/tmp/restart.txt
Esto significa que su aplicación de rieles se derrumbó antes de llegar a los rieles. Esto podría ser una excepción en el middleware, falta la clave ENV, algo en el nivel del sistema operativo.
Intente iniciar la aplicación localmente primero y haga lo que hizo para obtener el error en la producción. Si todo está bien, verifique todos sus registros. Compruebe los registros nginx, los registros de sus pasajeros y, finalmente, cualquier otro registro específico del sistema operativo relacionado con el arranque y la ejecución de su aplicación.
Para aquellos que usan Pasajero:
• Navegue a la raíz de su proyecto.
• ejecutar el
bundle exec rake secret RAILS_ENV=production
• Copie la salida y luego ejecute
sudo nano config/secrets.yml
• En
production
, reemplace el valor de
secret_key_base
con el secreto de rake recientemente copiado.
• presione
CNTRL+X
, luego presione
y
, luego presione
enter
.
• ejecute la
passenger-config restart-app
y seleccione la aplicación que desea reiniciar.
https://www.phusionpassenger.com/library/admin/apache/restart_app.html
Puede que mi respuesta esté fuera de tema, pero cuando mi servidor de base de datos
mysql
no se está ejecutando, también recibo este error.
Por si acaso alguien tiene el mismo error.
así que
start/restart
su base de datos podría ser otra respuesta.
Su producción de rails_env no ha requerido una configuración, probablemente falte secret_key_base.
Abra
/etc/nginx/sites-available/default
y cambie rails_env a desarrollo:
rails_env production;
to
rails_env development;
Si la aplicación se está cargando, no es un problema de pasajeros.
Solución de producción:
- Ingrese la raíz de su aplicación
-
run:
rake secret
- copia la salida
-
vaya a
/yourapp/config/secrets.yml
-
establecer la producción
secret_key_base
Reinicie la aplicación del pasajero:
touch /yourapp/tmp/restart.txt
Tuve este problema durante el fin de semana (resultó que había una incompatibilidad entre mis versiones de pasajero y rubí).
Sin embargo, nadie parece mencionarlo: el error real puede aparecer en /var/log/apache2/errors.log , no en ningún registro personalizado.
Una vez que lo sepas, ¡con suerte tu búsqueda será más fácil!
Actualización, ya que necesitaba volver a referirme a esto nuevamente, esto también es válido para nginx:
/var/log/nginx/error.log
es tu amigo en ese caso.