我有一个使用 nginx 的网络应用程序。假设它在 Rails 中,但这并不重要。
我计划让用户每天上传大约一百张图片/文件。我不想使用任何自定义解决方案来讲述故事和上传图像,而是我想自己管理。
1) 是否有我应该存储这些图像的惯用位置/路径?或者 nginx 范围内的任何路径都可以工作吗?
2) 它是否应该与我用于 CSS 故事图像的文件夹分开?
3) 我将如何组织文件夹林?也就是说,它是否应该类似于 /my_base_image_folder/{year}/{month}/{day}/{image_sequence_number}.jpg
?
或者 /my_base_image_folder/{article_id}/{image_sequence_number}.jpg
?或者我应该把它们放在同一个文件夹`/my_base_image_folder/{img_guid}.jpg?
为什么?
4) 推荐的上传文件命名方案是什么?图形标识符?还是序号?
最佳答案
这完全取决于您再次使用这些图像的用例。如果您计划在以后的 session 中为这些用户检索用户上传的图像,即,如果您的用户必须在您的应用程序中浏览他们的图像,最好将其存储在 a_public_folder/user_id_hashed/
。如果您打算根据上传的时间或日期检索图像,最好使用 a_public_folder/year/month/day/..
。为了安全起见,请确保您的 ngnix 可以使用不太开放的权限访问公用文件夹。另外,命名图像文件,我猜应该是时间戳和一个小的随机十六进制的组合,没什么大不了的。
关于ruby-on-rails - 如何管理用户上传的文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37336315/