- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我刚刚将一个静态网站部署到 Amazon S3,当前可以在此处查看:http://www.rdegges.com.s3-website-us-east-1.amazonaws.com/
如果您单击任何文章链接,您会注意到以下错误:
S3 提示文件不存在。现在,这就是奇怪的地方——我在我的域上使用 CloudFront。因此,当您单击该文章链接时,它会将请求发送到 CloudFront,然后 CloudFront 会尝试从 S3 存储桶取回文件。
但是,如果您直接从 S3 访问相同的 URL,例如:http://www.rdegges.com.s3-website-us-east-1.amazonaws.com/2015/building-a-heroku-addon-planning/页面将正常加载。
这里的翻译似乎丢失了一些东西。
有人建议我如何修复我的设置吗?
最佳答案
我会冒险说指定的 key 技术上不存在,因此错误消息在技术上是准确的,但并不能说明全部情况。这应该是一个简单的修复。
S3 存储桶有两个 1 端点:“REST”和“网站”。他们有两个不同的功能集。网站端点提供了索引文档的神奇解析(例如,index.html,在您提供的示例中,这似乎是实际应该返回到浏览器的内容),而 REST 端点则不然。
当您在用于网站托管的存储桶前面配置 CloudFront 时,您通常不希望通过从下拉列表中选择存储桶名称来将源配置为“S3”源;相反,您希望将其配置为“自定义”源,并使用 S3 控制台中提供的网站端点主机名(例如 example-bucket.s3-website-us-east-1...
),否则,CloudFront 假设您希望它使用存储桶的 REST 端点(允许身份验证和私有(private)内容,而网站端点则不允许)。
Important
Do not select the name of your bucket from the list, for example, example.com.s3.amazonaws.com.
http://docs.aws.amazon.com/gettingstarted/latest/swh/getting-started-create-cfdist.html
自从这个问题最初被回答以来,文档已经被重构,所以上面显示的消息现在出现在一页后,并且已经被重新措辞,但要点是相同的。 “存储桶名称”似乎指的是下拉列表中显示的选项,这不是您想要的。
Note
Be sure to specify the static website hosting endpoint, not the name of the bucket.
http://docs.aws.amazon.com/AmazonS3/latest/dev/website-hosting-cloudfront-walkthrough.html
错误消息以 XML 形式返回,提示您正在使用存储桶的 REST 端点。如果您使用的是网站端点,那么网站端点将返回 HTML 格式的错误消息。
按照所述为 CloudFront 分配创建一个新源,然后更改行为以将请求发送到新源,然后发送 /*
的 CloudFront 缓存失效请求,您就应该完成设置了。
另请参阅:
http://docs.aws.amazon.com/AmazonS3/latest/dev/WebsiteEndpoints.html#WebsiteRestEndpointDiff
<小时/>¹ 两个端点。从技术上讲,有两个以上,因为所有存储桶都至少有两个可能的 REST 端点主机名...但是端点有两种类型。存储桶还有一个可选的传输加速端点,该端点使用 AWS 边缘网络(与为 CloudFront 提供支持的基础设施相同)来实现更快/优化的传输,特别是从距离配置存储桶的区域较远的地理位置进行传输,但不使用 CloudFront 缓存。如果您激活此终端节点,它看起来像 https://example-bucket.s3-accelerate.amazonaws.com
,并且由于您使用更多的 AWS 网络并且对大多数请求产生额外的使用费用公共(public)互联网的差异较小......但是,这是端点的幕后部署的差异,而不是端点的行为。传输加速端点仍然是 REST 端点,因此就像其他 REST 端点一样,它不具有网站托管功能。 CloudFront 不会让您对原始域名使用加速端点,因为这没有意义 - 如果允许这样的配置,请求和响应将在 AWS Edge Network 中循环两次,并增加延迟和成本,而不会造成任何损失。提供任何好处。
关于amazon-web-services - CloudFront + S3网站: "The specified key does not exist" when an implicit index document should be displayed,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34060394/
查看“mysqldump -d”并看到一个键是 KEY,而不是“PRIMARY KEY”或“FOREIGN KEY” 什么是关键? 示例: CREATE TABLE IF NOT EXISTS `TA
在我开始使用 Python 的过程中尝试找出最佳编码实践。我用 Pandas 写了一个 csv 到数据框阅读器。它使用格式: dataframe = read_csv(csv_input, useco
在 Flutter 中,用一个例子可以清楚地解释什么? 我的困惑是关于 key,如下面的代码所示。 MyHomepage({Key key, this.title}) : super(key: key
我在我的 Android 应用程序中使用 GCM。要使用 GCM 服务,我们需要创建 Google API key 。因此,我为 android、服务器和浏览器 key 创建了 API key 。似乎
我想在 azure key 保管库中创建一个 secret ,该 key 将具有多个 key (例如 JSON)。 例如- { "storageAccountKey":"XXXXX", "Co
尝试通过带有 encodeforURL() 的 url 发送 key 时,我不断收到错误消息和 decodefromUrl() .代码示例如下。 这是我的入口页面: key = generateSec
是否有检查雪花变体字段中是否存在键的函数? 最佳答案 您可以使用 IS_NULL_VALUE 来查看 key 是否存在。如果键不存在,则结果将为 NULL。如果键存在,如果值为 JSON null,则
我正在尝试运行此命令: sudo apt-key adv --keyserver keys.gnupg.net --recv-keys 1C4CBDCDCD2EFD2A 但我收到一个错误: Execu
我有一个 csv 文件,我正在尝试对 row[3] 进行计数,然后将其与 row[0] 连接 row[0] row[3] 'A01' 'a' 'B02'
如何编写具有这种形式的函数: A(key, B(key, C(key, ValFactory(key)))) 其中 A、B 和 C 具有此签名: TResult GetOrAdd(string key
审查 this method我很好奇为什么它使用 Object.keys(this).map(key => (this as any)[key])? 只调用 Object.keys(this).ind
我有一个奇怪的情况。我有一个字典,self.containing_dict。使用调试器,我看到了字典的内容,并且可以看到 self 是其中的一个键。但是看看这个: >>> self in self.c
我需要在我的 Google Apps 脚本中使用 RSA-SHA256 和公钥签署消息。 我正在尝试使用 Utilities.computeRsaSha256Signature(value, key)
我是 React 的初学者开发人员,几天前我看到了一些我不理解的有趣语法。 View组件上有{...{key}},我会写成 key={key} ,它完全一样吗?你有链接或解释吗? render()
代理 key 、合成 key 和人工 key 之间有什么区别吗? 我不清楚确切的区别。 最佳答案 代理键、合成键和人工键是同义词。技术关键是另一个。它们都表示“没有商业意义的主键”。它们不同于具有超出
问题陈述:在 Web/控制台 C# 应用程序中以编程方式检索并使用存储在 Azure Key Vault 中的敏感值(例如数据库连接字符串)。 据我所知,您可以在 AAD 中注册应用,并使用其客户端
问题陈述:在 Web/控制台 C# 应用程序中以编程方式检索并使用存储在 Azure Key Vault 中的敏感值(例如数据库连接字符串)。 据我所知,您可以在 AAD 中注册应用,并使用其客户端
我正在寻找 Perl 警告的解决方案 “引用键是实验性的” 我从这样的代码中得到这个: foreach my $f (keys($normal{$nuc}{$e})) {#x, y, and z 我在
我正在为 HSM 实现 JCE 提供程序 JCE中有没有机制指定 key 生成类型例如: session key 或永久 key KeyGenerator keygen = KeyGener
我在 Facebook 上创建了一个应用程序。我已经正确添加了 keyhash 并且应用程序运行良好但是当我今天来并尝试再次运行它时它给了我这个错误。 这已经是第二次了。 Previsouly 当我收
我是一名优秀的程序员,十分优秀!