我在 php 中体验了我的第一个表单,可以上传图像。
我在网上看到一些文章解释它可能很危险,所以有什么方法可以阻止指定文件夹上的脚本?有.htaccess
或 php.ini
指令的东西?
我在 php 中体验了我的第一个表单,可以上传图像。
我在网上看到一些文章解释它可能很危险,所以有什么方法可以阻止指定文件夹上的脚本?有.htaccess
或 php.ini
指令的东西?
最好的办法是在上传时验证文件的扩展名。如果不是 jpg/png/gif/etc.,请忽略它。只要您的网络服务器没有被错误配置为将任何文件解释为 PHP 文件,那么使用这种方法,您就不会受到伤害,而且头疼最小且实现非常简单。
最好的方法是确保您的上传目录在您的 webroot 之外。只要网络服务器有读/写访问权限,你就可以了——不用担心可执行文件的上传。这是在 stackoverflow 上讨论的。
检查上传的文件是否具有良性扩展名(.gif、.mp3 等) - 并丢弃其他任何内容。对于额外的sekrit 保护,在数据库中捕获文件的原始名称(以供将来参考),然后加密文件名(并将其存储)。这样上传者就无法通过文件名找到上传的任何内容。
仅当您让用户上传他们想要的任何内容时,这才是危险的。只允许您认为安全的内容,您不需要阻止任何内容。
我认为如果您不检查上传的文件类型可能会很危险,例如“黑客”上传的 php 文件会删除您所有的 httpdocs 内容,或者人们可以上传到许多文件或大文件。