Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/234.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php上传和带宽/流量问题_Php_File Upload - Fatal编程技术网

Php上传和带宽/流量问题

Php上传和带宽/流量问题,php,file-upload,Php,File Upload,我在php.ini中将上传限制设置为3M。如果有人上传了一个50MB的文件,那么当它达到3Mb时,上传会停止吗?还是会一直持续到上传完成,然后读取文件大小并删除文件 如果您使用Apache作为web服务器,那么在请求完成之前,PHP没有机会启动。因此,上传限制仅在整个上传完成后生效。Apache首先接收整个请求,然后才调用相应的处理程序(在本例中为PHP)。由于没有服务器端机制中止正在进行的HTTP请求并返回响应,因此需要等待整个请求完成 因此,为了回答您的问题:否,上传将全部完成;PHP的内部

我在php.ini中将上传限制设置为3M。如果有人上传了一个50MB的文件,那么当它达到3Mb时,上传会停止吗?还是会一直持续到上传完成,然后读取文件大小并删除文件

如果您使用Apache作为web服务器,那么在请求完成之前,PHP没有机会启动。因此,上传限制仅在整个上传完成后生效。Apache首先接收整个请求,然后才调用相应的处理程序(在本例中为PHP)。由于没有服务器端机制中止正在进行的HTTP请求并返回响应,因此需要等待整个请求完成


因此,为了回答您的问题:,上传将全部完成;PHP的内部逻辑将检查上传的文件大小,查看是否大于限制,然后立即失败并出现错误。您的PHP脚本将无法运行,因此不要依赖运行时检查-它们根本不会被执行。

一旦达到3,它将停止。你应该测试一下it@Ibu:您使用的是哪台服务器?无法在Apache上复制您的结果:(Apache本身对帖子大小有限制。可能是这样吗?@Salman a:确实有,但默认为“无限制”坦白地说,我还没有在实践中看到一个不同的价值。然后有人真的会虐待你,破坏你的带宽每月qouta或破坏你的财务通过上传大文件不间断,所以你浪费流量对吗?你必须为我使用AWS支付0.10美分。你如何最好地防止他们上传超过限制的大文件?@Blackrother:是的,这(至少在理论上)是可能的。我不知道如何防止这种情况,除非阻止这种滥用IP地址。Apache的配置指令
LimitRequestBody
的文档表明它在这里可能有用: