Amazon web services S3网页重定向:can';t设置x-amz-website-redirect-location属性
我想对S3网页使用重定向。AWS文档要求设置Amazon web services S3网页重定向:can';t设置x-amz-website-redirect-location属性,amazon-web-services,redirect,amazon-s3,Amazon Web Services,Redirect,Amazon S3,我想对S3网页使用重定向。AWS文档要求设置x-amz-website-redirect-location属性,但这似乎不可设置。如果我尝试设置密钥,S3会在密钥前面加上x-amz-meta-(使其成为a),修改后的密钥不会导致重定向 我使用aws CLI设置元数据: aws s3api copy-object --copy-source static.righto.com/zero \ --bucket static.righto.com --key bar \ --metadata x-a
x-amz-website-redirect-location
属性,但这似乎不可设置。如果我尝试设置密钥,S3会在密钥前面加上x-amz-meta-
(使其成为a),修改后的密钥不会导致重定向
我使用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
是否变得不受支持
如果我在控制台中设置“WebsiteRedirectLocation”元数据,然后重定向工作,那么问题不在于中的重定向端点问题。但是我不能在API中使用“网站重定向位置”作为元数据键。使用——网站重定向位置
x-amz-website-redirect-location
不是用户元数据(x-amz-meta-*
),这就是--metadata
选项的用途。我不知道是否只需要设置它(在哪个命令上,复制?我没有复制我的网站构建文件夹,例如,它已经创建好了)或者,如果我需要路由规则)@PositiveGuy OP使用他在bucket中创建的一个名为zero
的空(0字节)对象,将添加的元数据复制到他想要重定向的位置。此功能与路由规则之间存在一些重叠。这取决于您试图完成什么,在多少地方,以及是否涉及到模式。对于boto,您可以查看以下链接:https://www.designingforthefuture.com/boto3
基本上,您必须执行S3.put\u对象(Bucket=,Key=,Body=“”,WebsiteRedirectLocation=“”)http://example.com)
对于那些试图使用Java SDK解决此问题的人: