Dans ma configuration nginx 0.8.34, j'utilise la fonction X-Accel-Redirect pour contrôler les téléchargements de fichiers dans le code de l'application sans que l'application gère le téléchargement lui-même.
Après beaucoup de douleur, cela fonctionne maintenant, sauf que nginx renvoie toujours le fichier avec le text/htmltype de contenu.
Le type de contenu par défaut est application / octet-stream, spécifié dans le httpbloc.
Le bloc serveur contient, entre autres, la définition du répertoire dans lequel les fichiers sont stockés:
location /files {
default_type application/octet-stream;
alias /srv/www/uploads;
internal;
}
J'ai donc spécifié le type de contenu même ici, mais rien n'a changé.
Je ne veux pas définir le Content-Type par l'application, car alors je ralentirais (je devrais d'abord le déterminer). Donc, idéalement, nginx retournerait le mimetype correct en fonction de l'extension du fichier (j'inclus mime.types dans le httpbloc).