我正在构建一个自定义电子商务,它的功能之一是将用户文件存储在网络上。
我读到在数据库上存储文件很糟糕,正确的是只放置文件的路径。
但是,存储这些文件的最佳方式是什么?我的意思是,我不能只上传文件,然后按原样保存它们......
- 我坚持这样的事情:
- 我将从一个名为 0001 的文件夹开始,在将文件复制到该文件夹之前,我会检查:“是我想要的最大大小的文件夹吗?”,如果是,那么它将创建一个新文件夹 (0002) {和我不知道最好的方法是,在上传之前,知道什么是最大的文件夹}。
- 上传后,我将设置的名称将基于两件事:
- 带有下划线 _ 的用户的散列 ID(具有随机安全性)
- 另外,带有下划线 _ 的大小的随机散列
- 加上一个随机散列,基于一个随机数
- 加上相同的文件扩展名(这对吗?如果用户上传一个 .php 文件,它会是!@#!我的服务器吗?)
够好吗?还是我忘记了什么?
我从来没有处理过大量需要限制(“非顺序”)的文件上传,我会感谢任何提示!
谢谢