Я пытаюсь загрузить большой файл с помощью PHP и CURL. Если вы откроете ссылку, следующий код должен инициировать загрузку.Неустранимая ошибка при загрузке большого файла с curl
$download = $downloadFolder.$result['file'];
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $download);
curl_setopt($ch, CURLOPT_USERAGENT, "MozillaXYZ/1.0");
curl_setopt($ch, CURLOPT_TIMEOUT, 300);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$output = curl_exec($ch);
curl_close($ch);
header('Content-Description: File Transfer');
header("Content-Type: video/mp4");
header("Content-Disposition: attachment; filename=".str_replace(" ", "_", $result['file']));
header("Content-Length: " . strlen($output));
header("Content-Transfer-Encoding: binary");
header('Expires: 0');
header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
header('Pragma: public');
header('Connection: close');
echo $output;
exit;
Он отлично работает с небольшими файлами (например, 35MB), но и на крупных, я получаю следующее сообщение об ошибке: PHP
Allowed memory size of 134217728 bytes exhausted (tried to allocate 63981406 bytes) in /var/www/typo3conf/ext/...
memory_limit в php.ini уже установлен на 128, но это все еще не работает. Нужно ли мне установить это значение еще выше?
Если я так делаю, я получу файл с 1 байтом, в котором есть только «1». – martinavk