Amazon S3redirect和Cloudfront

我试图在S3上使用对象设置301redirect,这里引用http://docs.aws.amazon.com/AmazonS3/latest/dev/how-to-page-redirect.html 。 我一直有一些问题,似乎无法弄清楚我做错了什么。

我得到的是一个空白页(0字节文件),就好像没有设置“网站redirect位置”元数据值一样。

我究竟做错了什么?

此外,AWS CloudFront上的这个工作是否正常?


我的S3控制台设置 S3控制台设置

情侣注意事项:

我有这个设置来托pipe一个静态网站。 我使用ssl / https与我自己的证书上传和设置在云端分布。 除了redirect对象之外,所有的页面都可以正常工作。 我已经尝试设置路由规则,但他们似乎并没有在Cloudfront中工作。

我试图通过cloudfront url和s3 url( https://s3.amazonaws.com/ {bucket} / users / sign_in)来访问redirect,

对于S3中类似于网站的function,例如redirect,html错误消息和索引文档,您不能使用REST端点(例如s3.amazonaws.com),因为这些function只能由网站端点提供(例如bucketname.s3-website-us-east-1.amazonaws.com)。

http://docs.aws.amazon.com/AmazonS3/latest/dev/WebsiteEndpoints.html

为了使行为在Cloudfront中可用,您需要configurationCloudfront以使用此端点,而不是通过控制台中的自动完成function提供的REST端点。

input您的存储桶的Amazon S3静态网站托pipe端点。 此值显示在Amazon S3控制台的“ 静态网站托pipe”下的“ 属性”页面中。

当您以此格式指定存储桶名称时,可以使用Amazon S3redirect和Amazon S3自定义错误文档。

http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/DownloadDistS3AndCustomOrigins.html

请注意,Web端点不支持HTTPS,但即使客户端连接是HTTPS,也可以将Cloudfrontconfiguration为使用HTTP从存储区中获取数据。

我遇到了与redirect失败和零长度文件下载相同的问题,但未使用Cloudfront。

在我的情况下,根本原因是我的DNS CNAMElogging指向REST端点(static.righto.com.s3-us-west-2.amazonaws.com),而不是网站端点(static.righto.com.s3- 网站 -us-west-2.amazonaws.com)。 更新CNAMElogging修复了我的redirect。

此问题的另一个症状是缺less显示XML错误页面的页面,而不是HTML错误页面。

本文档解释了网站端点与REST端点之间的区别。