Amazon s3存储桶在访问索引时转储XML中的全部内容
因此,发生了一些奇怪的事情,我为静态网站托管设置了我的AWS S3存储桶,并且它一切正常,但每当我转到纯域时(例如:'test.com')它返回一个XML文件错误,然后转储该XML中的所有内容。它看起来像this,但像'test.com/test'这样的其他域名确实有效。我将index.html设置为我的存储区中的索引,并且所有内容似乎都已正确配置。任何帮助?Amazon s3存储桶在访问索引时转储XML中的全部内容
此外,去'test.com/index'事实上显示索引很好,只有当你去'test.com'它是否给出了XML错误。
当您设置S3静态网站托管时,存储区名称必须与域名完全匹配。如果您想支持多个域名,那么您将需要多个存储桶。
假设您希望在S3上托管mywebsite.com和www.mywebsite.com。您需要创建两个存储桶“mywebsite.com”和“www.mywebsite.com”。然后为每个域名/桶对创建两个Route53条目。
您可以将一个网站重定向到另一个网站。
由于这个工程:test.com/index
但这并不:test.com
这听起来像你上传的名为index
不index.html
的索引文件。在这种情况下,您需要确保您的S3存储桶的静态网站配置中的索引文档设置为index
,而不是默认值index.html
,这正是您所说的当前配置。
另外,如果你在斗不已,这似乎既然你说test.com/test
作品,这样的情况在其他文件夹index.html
那么您只需重命名根index
文件是index.html
。
你有两个问题:
- 你已经错误地配置桶ACL或政策允许大家列出在桶中的对象。
如何列出桶中的对象?你去桶的REST端点的根目录...所以你看到的不是一个XML“错误” - 这是一个桶列表。
这反过来,揭示了第二个问题:
- 您已配置好域名指向REST端点,而不是网站托管端点。
网站托管功能只能从网站端点获得。
http://docs.aws.amazon.com/AmazonS3/latest/dev/WebsiteEndpoints.html