错误:EntityTooLarge 状态 400 AmazonAWS
Posted
技术标签:
【中文标题】错误:EntityTooLarge 状态 400 AmazonAWS【英文标题】:Error: EntityTooLarge Status 400 AmazonAWS 【发布时间】:2017-02-23 09:53:37 【问题描述】:我正在尝试将视频从 Cordova 应用程序上传到 android/iPhone 的 Amazon AWS S3 存储桶。但它有时会失败,从 AWS 存储桶中给出关于此错误的零星报告:
http_status:400,
<Code>EntityTooLarge</Code>
有些文件很小,有些大约 300mb 左右。
在 AWS 端我可以做些什么来解决这个问题?
【问题讨论】:
视频的大小以及如何将其上传到 S3。 已编辑问题描述。 【参考方案1】:400 Bad Request
错误有时被 S3 用来指示使请求在某种意义上无效的条件——不仅仅是语法上的无效,即传统意义上的 400 错误。
EntityTooLarge
您建议的上传超出了允许的最大对象大小。
400 Bad Request
http://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html
请注意“提议”一词。这似乎是对您发送的 Content-Length
请求标头的反应。你可能想检查一下。可能标头与文件的实际大小不一致,或者文件被检测为大于实际大小。
请注意,虽然 S3 中的最大 object 大小为 5 TiB,但最大 upload 大小为 5 GiB。 (大于 5 GiB 的对象必须分多个部分上传。)
【讨论】:
【参考方案2】:当请求正文大于服务器配置允许的大小时,会发生 413 错误。我相信这不是 AWS S3 抛出的错误,因为它们支持 5 TB 大小的对象。
如果您首先在应用中接受此视频,然后从那里向亚马逊 S3 发出请求,那么您的服务器未配置为接受请求中的大型实体。
请参阅 -set-entity-size for different servers。如果您的服务器未在此处列出,那么您需要弄清楚如何为您的服务器增加实体大小。
【讨论】:
谢谢。问题是,这是一个 400,而不是 413 错误。不知道这是否重要。另外,文件有几百 MB,可能是多部分数据问题? @Dave 无论如何 4XX 都是客户端错误。以上是关于错误:EntityTooLarge 状态 400 AmazonAWS的主要内容,如果未能解决你的问题,请参考以下文章