Enrutamiento de requestes no GET al pasajero en Nginx

Tengo una aplicación de Rails que está almacenando en caching las páginas en varios directorys personalizados. Todo funciona bien aparte de las requestes no GET, que están entregando 405 errores en Nginx porque mi configuration no los está enrutando a pasajeros. Mi pregunta es cuál es la manera más eficiente de enviar la request no GET directamente al pasajero?

Mi nginx.conf se ve actualmente así:

server { server_name railsapp.local; root /Users/i0n/Sites/railsapp/public; location / { try_files $uri /$host/$uri/index.html /$host/$uri.html /$host/$uri @passenger; } location @passenger { passenger_enabled on; } } 

2 Solutions collect form web for “Enrutamiento de requestes no GET al pasajero en Nginx”

 if ($request_method != 'GET') { passenger_enabled on; } 

Así que no pude encontrar un modo eficiente y libre de errores de lograr esto. El problema era que si se creaba una carpeta en el caching de Rails, una ruta que coincidiera con este nombre de carpeta se resolvería de forma estática antes de verificar la ruta de Rails (romper actualizaciones de crear y destruir acciones). Resolví esto creando nombres de ruta personalizados para las routes que estaban en conflicto con las carpetas almacenadas en caching. Ahora todo funciona bien.

  • Mostrando la raíz del directory al iniciar la aplicación Rails con Apache2 y Passenger
  • Apache mod_headers no funciona
  • Elastic Beanstalk con el pasajero Standalone: ​​¿configuration de trabajo?
  • Apache + Pasajero que no sirve a la raíz de la aplicación Sinatra
  • Cambiando las versiones de ruby ​​con Passenger, obteniendo un error
  • Cómo configurar Apache con Passenger (mod_rails) en Mac OS X?
  • ¿Es posible usar Shibboleth 2 con Nginx + Passenger?
  • No se puede instalar apt-get nginx-extras en la parte superior de nginx 1.7.9
  • El linux y los temas del servidor de Windows, como ubuntu, centos, apache, nginx, debian y consejos de red.