2011-10-03 134 views
1

我正在尝试执行以下方案:似乎无法写入设置为网站的S3存储桶

存储桶设置为share.example.com。

我的网站将写入这个桶 - 动态(用户生成的内容)。

我希望存储桶是一个网站,其index.html作为默认文档。

所以用户不会在我的网站的东西,应用程序,然后写入

share.example.com/foo/bar1/index.html

我则希望用户能够浏览到

http://share.example/foo/bar1/(< - 注意,任何的index.html)

我认为这将是微不足道的:

  • 成立铲斗的网站index.html作为默认文档
  • 只有我有权限写入到桶
  • 建立一个水桶政策允许匿名读取
  • 创建CNAME为share.example.com到share.example.com.s3-website-us-east-1.amazonaws.com

然而,一个问题。

在上面的配置中,当我尝试写入时,我得到了一个405. 如果我将CNAME更改为指向share.example.com.s3.amazonaws.com,写入成功,但现在网站赢了按要求工作。

这里有什么解决方案?

谢谢任何​​帮助的堆栈。

回答

1

诀窍是不要在写作方面使用虚空域。

I.e.而不是试图做PUT share.example.com/foo/bar1,做到s3.amazonaws.com/share.example.com/foo/bar1

然后shareNAME.example.com的CNAME可以指向share.example.com.s3-website-us-east-1.amazonaws.com,它的一切工作。

+0

感谢您跟进您的解决方案(+1)! –