1
0
您可以对文件上载控件进行多次检查。 1)检查 文件扩展名 (.wmv,.exe,.doc)。这可以通过 正则表达式 表达式。 2)实际检查 文件头 或定义类型(例如:gif、word、image等,XLS)。有时文件扩展名不够。 3)限制 文件大小 . (EX:20MB) 4)绝不接受用户提供的文件名。 总是将文件重命名为某个guid 根据您的规格。这样黑客就无法预测存储在服务器上的文件的实际名称。 5)存储所有文件 Web外虚拟目录 . 最好存储在单独的文件服务器中。 6)同时执行 验证码 用于文件上传。 |
2
1
|
3
0
一般来说,如果您真的打算允许上载任何类型的文件,我建议:
在存储方面,我总是喜欢使用文件系统来实现它的创建:存储文件。我不建议在数据库中存储文件(支持关系数据库)。您可以将文件的元数据存储在数据库中,并在文件系统中存储指向该文件的指针。 为文件生成唯一的ID,您可以使用两级目录结构来存储数据:例如:id=123456=>/path/to/store/12/34/123456.data 也就是说,这取决于你想要存储什么以及你想要如何管理它。为文档存储库、图像库或简单的“共享目录”提供服务是不一样的。 |
Farid · 限制django每个客户的访问 2 年前 |
josegp · 在Nmap中-p-tag是什么意思 2 年前 |
kramer65 · 如何根据网站用户在S3上添加非公共网站文件? 6 年前 |
derf26 · 如何阻止React Web包包含包中的脚本。json 6 年前 |
user8663960 · 最好也是最简单的方法是保护登录表单的安全 6 年前 |