0
嘗試使用PHP SDK v2(PHP 5.5不可用)將7G文件上載到S3。小於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);
執行總是失敗默默,繞過'register_shutdown_function'的抓。 似乎是cURL multi的一個問題。通常,執行在上傳最後一組部件之前結束。 – beej