Je crée une application Web (dans Django), qui doit permettre aux utilisateurs de télécharger des fichiers (en particulier des images, qui sont ensuite affichées pour d'autres utilisateurs). J'essaie de comprendre la meilleure façon de stocker ces fichiers téléchargés. Des questions connexes, j'ai vu certaines personnes suggérées de donner au fichier un identifiant unqiue généré par le serveur, puis de créer une table DB qui mappe les identifiants aux noms de fichiers d'origine.Meilleure façon de stocker les fichiers téléchargés par les utilisateurs dans une application Web
Est-ce la meilleure approche pour stocker des fichiers téléchargés par les utilisateurs, d'un point de vue sécurité, efficacité ou tout autre point de vue? Quel genre d'informations dois-je stocker sur chaque fichier?
Existe-t-il d'autres pratiques recommandées pour accepter les fichiers téléchargés par l'utilisateur? (À part s'assurer qu'il s'agit bien d'images et de vérifier leur taille, évidemment)?
Modifier: Un peu plus d'informations sur ce dont j'ai besoin. Je parle spécifiquement des fichiers image que les utilisateurs doivent télécharger et intégrer dans le contenu qu'ils créent. Imaginez-vous comme une réponse StackOverflow (ou un article de blog): quelqu'un télécharge une image, qui doit être stockée et affichée chaque fois que quelqu'un d'autre voit la réponse.
Merci,
Edan
Note: Il y a plusieurs questions connexes, mais je n'ai pas trouvé un qui demande une comparaison des façons de stocker les fichiers téléchargés par l'utilisateur.
salut edan, je suis venu au même problème. Je vais créer une application où les utilisateurs peuvent télécharger des images/pdfs. Ensuite, ils peuvent voir/télécharger des fichiers. Je pense au stockage du système de fichiers. Je voulais juste savoir de quel côté préférez-vous votre expérience? –
La direction que je prévois d'aller est: 1. Une base de données pour contenir des informations "méta" (nom de fichier d'origine, etc.). 2. Les fichiers physiques sur le système de fichiers, avec un nom qui est l'index dans la base de données de la méta-info. Il peut y avoir plus d'un fichier physique pour chaque entrée db, en passant, correspondant à différentes résolutions, par exemple. Par exemple, je vais avoir des fichiers: 254_high_res.jpg, 254_los_res.jpg, où 254 est l'index dans la base de données de la méta-info pour le fichier 254. –
merci edan. Je vais stocker des images avec les noms générés par le radon guid comme nom de fichier. et pour une résolution différente, je vais utiliser handler. http://dotnetslackers.com/articles/aspnet/Generating-Image-Thumbnails-in-ASP-NET.aspx –