S3网页重定向:无法设置x-amz-website-redirect-location属性

时间:2016-12-14 00:55:51

标签: amazon-web-services redirect amazon-s3

我想使用带有S3网页的重定向。 AWS Configuring a Web Page Redirect文档说明要设置x-amz-website-redirect-location属性,但这似乎不可设置。如果我尝试设置密钥,则S3会在密钥前加x-amz-meta-(使其为user-defined metadata),并且修改后的密钥不会导致重定向。

我使用aws CLI设置元数据:

 aws s3api copy-object --copy-source static.righto.com/zero \
--bucket static.righto.com --key bar \
--metadata x-amz-website-redirect-location=http://righto.com/bar \
--metadata-directive REPLACE

但是当我查看S3控制台时,元数据名称已经被添加了前缀,并且忽略了重定向。

如果我使用Python API,也会发生同样的事情:

s3.Bucket('static.righto.com').put_object(Key=src, Body='',
  Metadata={'x-amz-website-redirect-location': dst})

如果我尝试在S3控制台中设置x-amz-website-redirect-location元数据键,则会收到错误“用户定义的元数据键必须以x-amz-meta开头。”

x-amz-website-redirect-location是否不受支持?

如果我在控制台中设置“网站重定向位置”元数据然后重定向工作,那么问题不是this answer中的重定向端点问题。但我不能使用“网站重定向位置”作为API中的元数据键。

1 个答案:

答案 0 :(得分:2)

使用--website-redirect-location <value>

http://docs.aws.amazon.com/cli/latest/reference/s3api/copy-object.html

x-amz-website-redirect-location不是用户元数据(x-amz-meta-*),这是--metadata选项的用途。