0

我将我的时事通讯 .html 文件存储在 S3 中,并创建了一个函数来提取时事通讯并将它们放入 iFrame 中。

我的问题是我无法为 iFrame 设置自动高度,因为我无法阅读内容。

如果文件在同一个域中,我有一个可以工作的插件。我可以设置一些标题以允许从我的子域访问吗?

4

1 回答 1

0

S3 有一个称为“虚拟主机”的功能。

一般来说,虚拟主机是从单个 Web 服务器为多个网站提供服务的做法。区分站点的一种方法是使用请求的明显主机名,而不仅仅是 URI 的路径名部分。一个普通的 Amazon S3 REST 请求使用 Request-URI 路径的第一个斜杠分隔组件指定一个存储桶。或者,使用 Amazon S3 虚拟主机,您可以使用 HTTP 主机标头在 REST API 调用中寻址存储桶。在实践中,Amazon S3 将 Host 解释为大多数存储桶可在 http://bucketname.s3.amazonaws.com上自动访问(对于有限类型的请求). 此外,通过以您注册的域名命名您的存储桶并将该名称设为 Amazon S3 的 DNS 别名,您可以完全自定义您的 Amazon S3 资源的 URL,例如: http: //my.bucketname.com/

尝试将您的 S3 存储桶映射到您的域。

有关示例,请参见此处。

通过虚拟主机 URL 访问 S3 存储桶

S3 提供了两种访问内容的方法。一种方法使用 s3.amazonaws.com 主机名 URL,例如:

http://s3.amazonaws.com/mybucket.mydomain.com/myObjectKey

访问 S3 内容的另一种方法是在 URL 中使用虚拟主机名:

http://mybucket.mydomain.com.s3.amazonaws.com/myObjectKey

这两个 URL 都映射到 S3 中的同一个对象。

您可以通过设置将 mybucket.mydomain.com 映射到 mybucket.mydomain.com.s3.amazonaws.com 的 DNS CNAME 来缩短虚拟主机名 URL。有了这个 DNS CNAME 别名,上面的 URL 也可以写成如下:

http://mybucket.mydomain.com/myObjectKey

仅当您为存储桶设置 DNS CNAME 别名时,此较短的虚拟主机名 URL 才有效。

于 2012-06-08T12:51:21.573 回答