Reglas de reescritura nginx con pasajero

Estoy intentando migrar a nginx desde Apache usando Passenger en ambas instancias para alojar una aplicación Rails. La aplicación toma una solicitud, que es para una imagen, si la imagen existe en / system / logos / $ solicita la imagen, entonces debe publicarse o se le debe permitir golpear la aplicación Rails para generarla si es necesario (donde está en caché a / system / logos).

En Apache utilicé lo siguiente:

RewriteCond %{DOCUMENT_ROOT}/system/logos/%{REQUEST_FILENAME} -f
RewriteRule ^/(.*)$ http://assets.clg.eve-metrics.com/system/logos/$1

Esto funcionó bien. Los activos. subdominio es otro subdominio pero con la misma raíz, solo Pasajero deshabilitado, específicamente configurado para hospedar archivos estáticos (caduca).

En nginx estoy usando lo siguiente:

server {
  listen 80;
  passenger_enabled on;
  server_name  clg.eve-metrics.com www.clg.eve-metrics.com;
  root /opt/www/clg/current/public;
  gzip             on;
  gzip_min_length  1000;
  gzip_proxied     expired no-cache no-store private auth;
  gzip_types       text/plain application/xml text/css application/javascript;
  gzip_disable     msie6;
  error_page   500 502 503 504  /50x.html;
  location = /50x.html {
  }
  if (-f $document_root/system/logos$request_filename) { 
    rewrite ^/(.*)$ http://assets.clg.eve-metrics.com/system/logos/$1 break;
  }
}

Esto no funciona tan bien. En todo, de hecho. Nunca redirige a la ruta en caché y nunca llega a la aplicación Rails. Es como si nginx asumiera que es un activo estático, por lo que no se lo pasa a Passenger. ¿Hay una manera de detener este comportamiento para que llegue a la aplicación?

Respuestas a la pregunta(2)

Su respuesta a la pregunta