在 PHP 中上传非常大的文件时,服务器上需要多少 RAM


When uploading a very large file in PHP, how much RAM is required on the server?

我读了 http://www.php.net/manual/en/ini.core.php#ini.post-max-size。

memory_limit必须> post_max_size.那么如果用户上传的文件 500MB,那么总 RAM 使用多少?

它使用>500MB 吗?

不,memory_limit不必大于 post_max_size。

PHP 具有不同的 POST 阅读器和处理程序,具体取决于请求的内容类型。在"多部分/表单数据"(用于发送文件)的情况下,rfc1867_post_handler充当混合读取器/处理程序。它填充$_POST$_FILES。进入$_POST的内容计入内存限制,进入$_FILES的内容也计算在内。

但是,$_FILES只有关于文件的元数据,而不是文件本身。这些只是写入磁盘,因此不计入内存限制。