我正在开发一个脚本,从给定URL的用户那里获取小文件(小于1 MB)并将它们保存在我的服务器上。
我主要担心的是,如果有人试图上传 1 GB 甚至更大的文件等大文件怎么办?如果文件是大文件,如何控制文件抓取?
我尝试了网络上的一些答案,但所有这些答案都处理整个文件。对于700 MB
视频文件,它需要几分钟,这是否意味着该过程占用了我的服务器资源?
如果黑客继续将URL发布到大文件中,那么这些过程将占用我的服务器资源并且我将失去访问者怎么办。
有人可以建议我吗?
这应该可以解决问题。不能上传大于 1 MB 的文件
if($_FILES['file']['size'] < 1048576) { // This is one megabyte (in bytes)
// the file is within size restriction, continue
} else {
// File is too large, return an error
}
然后,您可以在上传之前使用一些javascript来测试文件大小,但请记住,您不能依赖它来确保安全性。
您可以在此处设置上传文件大小。喜欢这个
<?php
ini_set('post_max_size', '20K'); // If you need it like 10 MB , Set is as 10M
ini_set('upload_max_filesize', '20K');
忍者编辑:出于安全目的,这不是一个好的答案
您可以在 JavaScript 中检查文件大小,这样就不需要将其发送到服务器。您可以在此处找到完整的说明:JavaScript 文件上传大小验证