【问题标题】:Upload to AWS S3 limits上传到 AWS S3 限制
【发布时间】:2015-01-10 20:32:22
【问题描述】:

我正在使用Amazon S3AWS SDK for PHP。上传文件有文件大小限制吗?是否有同时上传文件的限制?

当我尝试为我的存储桶一次发送 20 个 200MB 的文件时,它给了我很多这样的错误:

RequestTimeTooSkewedException:AWS 错误代码:RequestTimeTooSkewed, 状态代码:403,AWS 请求 ID:0CE24AEDE4162AC9,AWS 错误类型: 客户端,AWS 错误消息:请求时间和 当前时间过大。

RequestTimeoutException:AWS 错误代码:RequestTimeout,状态代码: 400,AWS 请求 ID:913367E51F2BC5AD,AWS 错误类型:客户端,AWS 错误消息:您与服务器的套接字连接未从中读取 或在超时期限内写入。空闲连接将是 关闭。

或者问题出在我的代码或 PHP 上?

【问题讨论】:

    标签: php amazon-s3


    【解决方案1】:

    您的网络连接速度似乎不够快,无法一次性上传这么大的文件。 RequestTimeTooSkewedException 错误可能由于 helloV 提到的时钟不同步而发生。但是如果上传时间过长,请求签名的时间和请求完成的时间可能相差15分钟以上,也会导致这个错误。我怀疑这可能会发生,因为第二个错误RequestTimeoutException 很可能发生,因为您与 S3 的连接太慢了。

    您需要更好的连接,或者您应该考虑使用分段上传 API。对此有帮助:http://docs.aws.amazon.com/aws-sdk-php/guide/latest/service-s3.html#uploading-large-files-using-multipart-uploads

    【讨论】:

      【解决方案2】:

      到目前为止,大小限制为 5 TB,而您的 200MB 在最大大小范围内。

      问题是您本地机器的系统时钟不同步。与 NTP 服务器同步或手动设置,问题就会消失。

      对于第二个错误,您指定的文件大小可能大于实际大小。如果您的文件大小为 200MB,则您在 API 中传递的值可能大于 200MB。

      【讨论】:

        【解决方案3】:

        它给出了这个错误?

        <Error><Code>RequestTimeTooSkewed</Code><Message>The difference between the requ
        est time and the current time is too large.</Message><RequestTime>Wed, 08 Apr 20
        15 11:50:58 GMT</RequestTime><ServerTime>2015-04-07T11:51:03Z</ServerTime><MaxAl
        lowedSkewMilliseconds>900000</MaxAllowedSkewMilliseconds><RequestId>255BFB2CF336
        1F0D</RequestId><HostId>DlpwnpVVH9aQku8qD8sAaO6tFCBlrfr9P2Sl3jbBd7FKXbzsJ1SJAwqR
        OsNf+2qdSSKElK3mbus=</HostId></Error>
        

        错误你可以看到requesttime和servier time不同,它必须相同。所以请检查您当地的电脑时间和日期。

        【讨论】:

          猜你喜欢
          • 2021-05-19
          • 2018-07-12
          • 2021-09-06
          • 2014-02-11
          • 2017-04-12
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2017-11-20
          相关资源
          最近更新 更多