J'ai une application Django et j'utilise nginx pour servir du contenu statique. Malheureusement, tous les types MIME enregistrés sont affichés dans le navigateur client, alors que je voudrais donner la possibilité de télécharger le même contenu, avec le comportement habituel. Dites, j'ai un fichier JPEG sous /media/images/image01.jpg
et je veux que nginx serve ce fichier de façon habituelle, avec l'en-tête standard image/jpeg
, mais en plus je veux la même image à servir par nginx avec content-disposition: attachment
(forçant effectivement le téléchargement de contenu) quand on accède à disons /downloads/images/image01.jpg
. Quelqu'un peut-il proposer une solution?Différencier le comportement de nginx en fonction de l'URL
2
A
Répondre
6
Assurez-vous que vous avez le http_headers_module compilé (devrait être par défaut, si ce n'est pas dans le noyau)
utilisation. « Attachement de disposition de contenu add_header; »
Je recommande d'utiliser une URL comme "/download?file=/downloads/images/image01.jpg" combinée avec une règle de réécriture pour éviter un bug ennuyeux plus tard.
Questions connexes
- 1. Règles de réécriture nginx avec Passager
- 2. Comportement étrange de stdout en C++
- 3. En production, Apache + mod_wsgi ou Nginx + mod_wsgi?
- 4. cours de codage avec le même comportement + comportement unique
- 5. ASP.NET Compiler les changements de comportement en fonction du contenu de la page?
- 6. Comment bloquer les spams de référence en utilisant Nginx?
- 7. ms accès vba comportement de la fonction Eval
- 8. comportement étrange en javascript
- 9. Configuration de sous-domaines sur nginx
- 10. comportement étrange dans la fonction PHP: timezone_name_from_abbr
- 11. Comment différencier les broches d'annotation?
- 12. question d'installation nginx
- 13. Comportement étrange de getDefinitionByName
- 14. Comportement étrange de javascript
- 15. Comment différencier les chaînes multilignes avec RSpec?
- 16. LightHttpd vs Nginx
- 17. Visual Studio: différencier app.config pour le mode de débogage et de publication
- 18. nginx rewrite question
- 19. nginx avec mod_wsgi
- 20. Comment configurer Nginx en tant que proxy inverse de mise en cache?
- 21. Cakephp modifier le comportement de l'URL
- 22. Comment utiliser le langage cacao pour différencier endElements en XML lorsqu'ils sont identiques?
- 23. Comment différencier (en cas de surcharge) entre les formes préfixes et postfixes de l'opérateur ++? (C++)
- 24. Comportement en ligne déroutant du générateur de nombres aléatoires (C++)
- 25. Meilleure méthode de post-traitement Réponse de proxy inverse Nginx
- 26. Comportement de compréhension de liste inattendu en Python
- 27. Quelle est la meilleure façon de différencier Crystal Reports?
- 28. Modifier la liste.Contient le comportement
- 29. manutention OPTIONS demande dans nginx
- 30. Comment émuler le comportement 'include' dans MATLAB?
Pourquoi et comment voulez-vous utiliser URL avec des paramètres de la requête? Pour donner le fichier avec un nom de fichier incorrect pour l'utilisateur? – iny
Merci, c'est tout. – zgoda
La raison de l'utilisation d'une URL avec des paramètres de requête est de dire à nginx de ne forcer un téléchargement qu'en utilisant/download? File = {filename} En utilisant une règle de réécriture correctement, vous pouvez ajouter l'en-tête et continuer le reste des règles. La config de nginx. – epochwolf