Мне удалось это сделать с помощью php загрузки фрагментов из этой статьи: https://artisansweb.net/how-to-implement-chunk-upload-in-php/
исходный код для загрузки фрагментов в php:
$ tmpfile = путь_хранилища (ПУТЬ);
$orig_file_size = filesize($tmpfile);
$chunk_size = 256; // chunk in bytes
$upload_start = 0;
$handle = fopen($tmpfile, "rb");
$fp = fopen('ftp://USERNAME:PASSWORD@HOST:21//TARGETDIR/FILENAME', 'w');
while($upload_start < $orig_file_size) {
$contents = fread($handle, $chunk_size);
fwrite($fp, $contents);
$upload_start += strlen($contents);
fseek($handle, $upload_start);
}
fclose($handle);
fclose($fp);