无法使用html格式在asw s3上上传更多5GB数据

时间:2016-12-28 02:46:52

标签: php amazon-s3

我有一个S3存储桶,并且正在使用GitHub S3类。我成功上传了一个小于5GB的文件。但我想上传超过5GB的数据 - 例如单次转账100GB。

S3::setAuth(awsAccessKey, awsSecretKey);    
$bucket = "upload-bucket";
$path = "myfiles/"; // Can be empty ""

$lifetime = 3600; // Period for which the parameters are valid
$maxFileSize = (1024 * 1024 * 1024 * 5); 

$metaHeaders = array("uid" => 123);
$requestHeaders = array(
    "Content-Type" => "application/octet-stream",
    "Content-Disposition" => 'attachment; filename=${filename}'
);

$params = S3::getHttpUploadPostParams(
    $bucket,
    $path,
    S3::ACL_PUBLIC_READ,
    $lifetime,
    $maxFileSize,
    201, // Or a URL to redirect to on success
    $metaHeaders,
    $requestHeaders,
    false // False since we're not using flash
);

$uploadURL = "https://{$bucket}.s3.amazonaws.com/";



<form method="post" action="<?php echo $uploadURL; ?>" enctype="multipart/form-data">

    <input type="file" name="file" />&#160;<input type="submit" value="Upload" />
</form>

我想通过文件浏览器上传更多100GB数据。通过使用上面的代码,我可以上传5 GB的数据。但是,如果我尝试上传超过5GB的数据,例如10Gb,100GB。那么这种类型的错误正在显示

enter image description here

1 个答案:

答案 0 :(得分:1)

阅读the FAQ

  

可以在单个PUT中上传的最大对象是5   千兆字节。对于大于100兆字节的对象,客户应该   考虑使用分段上传功能。

您无法在一个请求中上传大于5 Gb的文件,因此您需要为分块(“多部分”)上传开发解决方案。