nginx + Rails 3.1 + sous-répertoires d’actifs Cloudfront 404 manquants

J’utilise le pipeline de ressources Rails 3.1 qui est servi avec un CDN Cloudfront d’origine.

C’est ce que j’ai écrit dans mon nginx.conf pour servir les ressources de gzip et pour la mise en cache:

location ^~ /assets/ { allow all; gzip_http_version 1.0; gzip_static on; expires 365d; add_header Last-Modified ""; add_header ETAg ""; add_header Cache-Control public; } 

Le problème est que les sous-répertoires, par exemple / background / dans mon dossier d’actifs d’images, ont leurs éléments manquants avec 404s.

Lorsque je désactive la configuration de l’emplacement nginx, le problème disparaît. Comment configurer nginx correctement pour servir les ressources dans les sous-répertoires?

Merci

Cela a fonctionné pour moi:

 location ~ ^/(assets)/ { root /opt/appname/public; # or whatever the path is to your app's public folder gzip_http_version 1.0; gzip_static on; access_log off; expires 1y; add_header Cache-Control public; add_header Last-Modified ""; add_header ETag ""; break; }