4
回答
php上传文件的问题
利用AWS快速构建适用于生产的无服务器应用程序,免费试用12个月>>>   
php在接收上传文件的时候 应该是在文件上传到服务器后才可以做安全检查的把?比如文件类型、大小等等。如果按照这种机制的话 那岂不是容易造成安全隐患吗?比如有人恶意上传文件消耗服务器资源
举报
西门飞
发帖于5年前 4回/313阅
共有4个答案 最后回答: 5年前

文件上传后是存放在临时文件夹中的,用户无法访问,在确认文件安全之后再移动到WEB目录下,这样会有安全隐患?

恶意上传消耗服务器资源是另外一回事了,而且接收上传的文件是apache处理的,PHP没办法

--- 共有 1 条评论 ---
西门飞文件的访问确实没有安全隐患 我说的安全隐患特指消耗资源 5年前 回复
肯定的啦,js是无法操纵本地任何资源的,所以也就没办法进行上传之前的检查验证工作(唯一能做的恐怕就是检查文件后缀名....)。但是html5新增加了一个文件API为,js可以调用api获得文件的大小,图片还能显示缩略图。安全检查还是要去服务器处理。php可以设置超时时间,上传文件太大的话,肯定会超时终止。如果确实很有必要在前段做一些检查工作,那除了html5就只能使用flash了。
--- 共有 6 条评论 ---
朱__朱回复 @西门飞 : 采纳,给分,闪人 5年前 回复
西门飞哈哈 突然想到的一个安全问题而已 鉴于目前上传的机制也只能这样了 5年前 回复
朱__朱回复 @leo108 : max_upload_size默认就2M,但是超过2m同样可以上传,因为只有上传到服务器以后,php才能获得文件的大小,所以靠这个设置只能限制超过2m无法保存,不能限制超过2m无法上传。如果要限制大文件上传,http方式只能限制超时时间,stream方式也只能限制socket的超时时间,此时最终能上传的大小决定于上传者的网速。 5年前 回复
leo108通过超时时间来限制上传文件大小是不现实的……可以直接通过php.ini来设置上传的文件大小限制 5年前 回复
朱__朱回复 @西门飞 : 前端是过滤性验证,过滤掉一些非法上传请求,为恶意上传者设置障碍,降低他的效率,减轻后端验证时的负担。恶意上传能消耗什么资源,他比你还累,全世界网站都这样,要攻击的话,ddos来得更痛快... 5年前 回复
顶部