Amazon S3 HTTP标头允许子域?

时间:2012-06-08 12:42:47

标签: iframe amazon-s3 http-headers cross-domain

我在S3中存储我的简报.html文件,我创建了一个拉动简报并将它们放入iFrames的函数。

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

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

1 个答案:

答案 0 :(得分:0)

S3有一个名为"Virtual Hosting"的功能。

  

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

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

有关示例,请参阅here

  

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

     

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

     

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

     

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

     

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

     

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

     

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

     

http://mybucket.mydomain.com/myObjectKey

     

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