2015-07-04 2 views
0

Пытается загрузить 7G-файл на S3 с помощью PHP SDK v2 (PHP 5.5 недоступен). Загрузка файлов менее 5G работает отлично, но многостраничные загрузки никогда не работали. Они всегда заканчиваются отсутствием сообщений или ошибок, как раз перед загрузкой.PHP для AWS S3 многократная загрузка всегда сбой

У меня есть полный доступ S3. Попробовали кучу разных вещей безрезультатно.

код нет ничего особенного:

$uploader = UploadBuilder::newInstance() 
    ->setBucket($bucket_nm) 
    ->setKey($key) 
    ->setMinPartSize(100 * 1024 * 1024) 
    ->setConcurrency(1) 
    ->setSource($src_path) 
    ->setClient($s3) 
    ->build(); 
try { 
    $uploader->getEventDispatcher()->addListener(
     'multipart_upload.after_part_upload', 
     function($event) { 
      $msg = $event['state']->count() . ' parts uploaded.'; 
      echo "$msg<br />"; 
      WriteToLog($msg); 
     } 
    ); 
    $uploader->upload(); 
    $msg = 'Upload complete.'; 
} catch (MultipartUploadException $e) { 
    $uploader->abort(); 
    $msg = 'Upload failed. ' . $e->getMessage() . '.'; 
} 
echo "$msg<br />"; 
WriteToLog($msg); 
+0

Выполнение всегда терпит неудачу молча, минуя 'register_shutdown_function' , Появляется проблема с cURL multi. Обычно выполнение заканчивается непосредственно перед загрузкой последней группы деталей. – beej

ответ

0

Вам нужно разместить применять их пытаются поймать на месте вашего для прерывания или загрузки процесса

// Perform the upload. Abort the upload if something goes wrong 
try { 
$uploader->upload(); 
echo "Upload complete.\n"; 
} catch (MultipartUploadException $e) { 
$uploader->abort(); 
echo "Upload failed.\n"; 
} 
Смежные вопросы