Amazon s3存储桶在访问索引时将XML中的全部内容转储

因此,有些奇怪的事情发生了,我为静态网站托管设置了我的AWS S3存储桶,并且它一切正常,但每当我进入普通域(例如:'test.com')时,它都会返回一个XML文件错误,然后转储该XML中的所有内容。 它看起来像这样,但像'test.com/test'这样的其他域名确实有效。我将index.html设置为我的存储区中的索引,并且所有内容似乎都已正确配置。 任何帮助?

另外,去'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的默认值,这正是您所说的当前配置的默认值。

或者,如果您已经在存储桶中的其他文件夹中存在index.html ,这似乎是您说test.com/test起作用的情况,那么您只需将根index文件重命名为index.html


你有两个问题:

  • 您错误地配置了存储桶ACL或策略,以允许每个人列出存储桶中的对象。
  • 你如何列出桶中的对象? 你去桶的REST端点的根目录...所以你看到的不是一个XML“错误” - 这是一个桶列表。

    这又反过来揭示了第二个问题:

  • 您已将域配置为指向REST端点,而不是网站托管端点。
  • 网站托管功能只能从网站端点获得。

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

    链接地址: http://www.djcxy.com/p/70223.html

    上一篇: Amazon s3 bucket dumps entire content in XML upon visiting index

    下一篇: Error 403 Forbiden when configure lifecycle for s3 bucket with boto and python