S3 使用 PUT 而不是 POST
S3 use PUTinstead of POST
我在我的亚马逊环境中进行了以下设置:
CloudFront 分布 -> 法兰克福的 S3 存储桶。
不幸的是,较新的地区仅支持 v4 签名,这让我有些头疼。
我使用 fine-uploader 直接上传到云端分发,如果文件被分块,一切正常(在这种情况下,fine-uploader 使用 put 上传文件)。
当文件大小小于块大小时,就会出现问题。在这种情况下,fine-uploader 将方法更改为 POST。由于 Post 不受云端支持(如 documentation ),我无法上传文件。有什么方法可以覆盖非分块文件的上传方法吗?
您可以简单地降低 S3 最大块大小。请参阅此处的文档:http://docs.aws.amazon.com/cli/latest/topic/s3-config.html#multipart-chunksize
multipart_chunksize
Default - 8MB
Once the S3 commands have decided to use multipart operations, the file is divided into chunks. This configuration option specifies what the chunk size (also referred to as the part size) should be. This value can specified using the same semantics as multipart_threshold, that is either as the number of bytes as an integer, or using a size suffix.
我刚刚对 Fine Uploader 5.4 的 pre-release 做了一些调整。如果您使用 v4 签名通过 CDN 和 发送文件,您还需要将 S3 存储桶的主机名提供给 Fine Uploader S3。这将确保使用存储桶的主机名而不是您的 CDN 的主机名对 headers 进行签名。这已经通过 Fastly 进行了测试和验证,并且应该可以与任何健全的 CDN 一起使用。在大多数情况下,CloudFront 是一团糟,因此无法保证使用 CF。
由于我的更改,我认为您将不必再使用源访问身份,因此不会仅限于 PUT 请求。
我已经更新了 S3 feature page in the develop branch 上 CDN 部分的文档以供参考。 5.4.0预定下周发布。
我在我的亚马逊环境中进行了以下设置: CloudFront 分布 -> 法兰克福的 S3 存储桶。 不幸的是,较新的地区仅支持 v4 签名,这让我有些头疼。 我使用 fine-uploader 直接上传到云端分发,如果文件被分块,一切正常(在这种情况下,fine-uploader 使用 put 上传文件)。 当文件大小小于块大小时,就会出现问题。在这种情况下,fine-uploader 将方法更改为 POST。由于 Post 不受云端支持(如 documentation ),我无法上传文件。有什么方法可以覆盖非分块文件的上传方法吗?
您可以简单地降低 S3 最大块大小。请参阅此处的文档:http://docs.aws.amazon.com/cli/latest/topic/s3-config.html#multipart-chunksize
multipart_chunksize
Default - 8MB
Once the S3 commands have decided to use multipart operations, the file is divided into chunks. This configuration option specifies what the chunk size (also referred to as the part size) should be. This value can specified using the same semantics as multipart_threshold, that is either as the number of bytes as an integer, or using a size suffix.
我刚刚对 Fine Uploader 5.4 的 pre-release 做了一些调整。如果您使用 v4 签名通过 CDN 和 发送文件,您还需要将 S3 存储桶的主机名提供给 Fine Uploader S3。这将确保使用存储桶的主机名而不是您的 CDN 的主机名对 headers 进行签名。这已经通过 Fastly 进行了测试和验证,并且应该可以与任何健全的 CDN 一起使用。在大多数情况下,CloudFront 是一团糟,因此无法保证使用 CF。
由于我的更改,我认为您将不必再使用源访问身份,因此不会仅限于 PUT 请求。
我已经更新了 S3 feature page in the develop branch 上 CDN 部分的文档以供参考。 5.4.0预定下周发布。