【问题标题】:aws s3 bucket does not recognize index.html in sub directoryaws s3 存储桶无法识别子目录中的 index.html
【发布时间】:2017-10-16 09:17:07
【问题描述】:

我在aws s3上的文件夹结构如下图:

源代码 ----> index.html

现在在静态网站托管设置中,我正在尝试设置

http://www.website.com.s3-website-us-west-2.amazonaws.com/src/index.html

在索引文档字段中。不知何故,它给了我

The IndexDocument Suffix is not well formed 错误。我该如何解决这个错误?

【问题讨论】:

  • 索引文档是一个名称。它不是 path 或 URL:stackoverflow.com/a/20269943/1695906。你想在这里完成什么?
  • @Michael-sqlbot 我有存储桶名称“www.m.xyz.com”。在那个桶里面我有src 文件夹。在那个文件夹里面我有index.html 文件。现在我无法获取该 index.html 文件,因为它位于 src 文件夹中。那我该怎么点呢?
  • 索引文档是为每个文件夹查找的文件夹级实体。如果您的索引文档是index.html,则GET / → S3 查找对象index.html; GET /photos/cats/funny → 查找对象photos/cats/funny,如果没有找到,则查找对象photos/cats/funny/,如果没有找到,最后查找对象photos/cats/funny/index.html。它不是对整个存储桶的单个文档的规范,而是在任何看起来像文件夹请求的请求中搜索的单个 name...它在文件夹。
  • @Michael-sqlbot 我已经将index.html 放入index document 字段中的static website hosting。那为什么加载不出来呢?

标签: amazon-web-services amazon-s3


【解决方案1】:

同意。似乎不可能在索引文档名称中包含斜杠(例如src/index.htm)。

索引文档似乎是相对于给定路径的,因此:

  • / 默认为 /index.html
  • /src/ 默认为 /src/index.html
  • 等

一种解决方法可能是使用一个 index.htm 文件重定向到 src/,然后该文件将正确默认为 src/index.htm。

或者,您可以将 Amazon CloudFront 放在 S3 前面,并将源定义为 src 路径。

【讨论】:

  • 根据您的建议,我将src 放入cloudFront 中的origin path。仍然无法找到 index.html
猜你喜欢
  • 2018-06-04
  • 1970-01-01
  • 1970-01-01
  • 2014-10-10
  • 1970-01-01
  • 1970-01-01
  • 2022-01-23
  • 1970-01-01
  • 2017-01-12
相关资源
最近更新 更多