Questions tagged «amazon-cloudfront»

Amazon CloudFront是用于内容交付的Web服务。它与其他Amazon Web Services集成在一起,为开发人员和企业提供了一种简便的方法,以低延迟,高数据传输速度和无承诺的方式向最终用户分发内容。

6
通过S3从Amazon CloudFront提供压缩的CSS和JavaScript
我一直在寻找使网站加载速度更快的方法,而我想探索的一种方法是更多地使用Cloudfront。 由于Cloudfront最初不是设计为自定义CDN的,并且因为它不支持gziping,所以到目前为止,我一直在使用它来托管我的所有图像,这些图像在我的站点代码中由它们的Cloudfront cname引用,并经过了优化-futures标头。 另一方面,CSS和javascript文件托管在我自己的服务器上,因为到目前为止,我一直无法从Cloudfront中获得CSS和javascript文件的印象,而获得gzip压缩(大约75%)的收益超过了使用CDN(约占50%):Amazon S3(因此也就是Cloudfront)不支持使用浏览器发送的HTTP Accept-Encoding标头以标准方式提供压缩内容,以表明他们支持gzip压缩,并且因此他们无法即时压缩和提供组件。 因此,直到现在,我的印象是,必须在两种选择之间进行选择: 将所有资产移至Amazon CloudFront,而不必担心GZipping; 保持组件自托管,并配置我们的服务器以检测传入的请求,并根据需要即时执行GZipping,这是我到目前为止选择的操作。 还有人变通办法来解决这个问题,但本质上这些没有工作。[ 链接 ]。 现在,Amazon Cloudfront似乎支持自定义来源,并且如果您正在使用“自定义来源” [ link ],现在可以使用标准的HTTP Accept-Encoding方法来提供压缩后的内容。 到目前为止,我还无法在服务器上实现新功能。我上面链接到的博客文章,这是我发现的唯一详细介绍此更改的文章,似乎暗示着,如果您选择自定义来源,则只能启用gziping(我不想使用的栏变通方法)。我宁愿不要:我发现将Coresponding的文件托管在Cloudfront服务器上并从那里链接到它们更简单。尽管仔细阅读了文档,但我不知道: 新功能是否意味着文件应该通过自定义来源托管在我自己的域服务器上,如果是,则通过什么代码设置可以实现此目的; 如何配置css和javascript标头,以确保从Cloudfront压缩后提供它们。

11
跨域资源共享策略阻止了源字体的加载
我在某些Chrome浏览器上收到以下错误,但不是全部。目前还不能完全确定问题是什么。 跨域资源共享策略已阻止加载来自来源“ https://ABCDEFG.cloudfront.net ”的字体:所请求的资源上不存在“ Access-Control-Allow-Origin”标头。因此,不允许访问源“ https://sub.domain.com ”。 我在S3上具有以下CORS配置 <CORSConfiguration> <CORSRule> <AllowedOrigin>*</AllowedOrigin> <AllowedHeader>*</AllowedHeader> <AllowedMethod>GET</AllowedMethod> </CORSRule> </CORSConfiguration> 要求 Remote Address:1.2.3.4:443 Request URL:https://abcdefg.cloudfront.net/folder/path/icons-f10eba064933db447695cf85b06f7df3.woff Request Method:GET Status Code:200 OK Request Headers Accept:*/* Accept-Encoding:gzip,deflate Accept-Language:en-US,en;q=0.8 Cache-Control:no-cache Connection:keep-alive Host:abcdefg.cloudfront.net Origin:https://sub.domain.com Pragma:no-cache Referer:https://abcdefg.cloudfront.net/folder/path/icons-e283e9c896b17f5fb5717f7c9f6b05eb.css User-Agent:Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/37.0.2062.94 Safari/537.36 来自Cloudfront …

13
强制CloudFront分发/文件更新
我正在使用Amazon的CloudFront来提供Web应用程序的静态文件。 有没有办法告诉Cloudfront发行版它需要刷新其文件或指出应刷新的单个文件? 亚马逊建议您对诸如logo_1.gif,logo_2.gif之类的文件进行版本控制,以解决此问题,但这似乎是一个非常愚蠢的解决方案。绝对没有其他方法吗?


8
如何为Cloudfront上的静态托管网站的子目录设置默认根对象?
如何在Cloudfront上的静态托管网站上为子目录设置默认根对象?具体来说,我希望www.example.com/subdir/index.html在用户要求时提供服务www.example.com/subdir。请注意,这是为了交付S3存储桶中的静态网站。此外,我想使用原始访问身份将对S3存储桶的访问限制为仅Cloudfront。 现在,我知道Cloudfront的工作方式与S3和Amazon状态特别不同: CloudFront默认根对象的行为与Amazon S3索引文档的行为不同。当您将Amazon S3存储桶配置为网站并指定索引文档时,即使用户请求存储桶中的子目录,Amazon S3也会返回索引文档。(索引文档的副本必须出现在每个子目录中。)有关将Amazon S3存储桶配置为网站以及有关索引文档的更多信息,请参阅Amazon Simple Storage Service开发人员指南中的在Amazon S3上托管网站。 因此,即使Cloudfront允许我们指定默认的根对象,这仅适用于www.example.com而不适用于www.example.com/subdir。为了解决这个难题,我们可以更改原始域名以指向S3给定的网站端点。这很好用,并且可以统一指定根对象。不幸的是,这似乎与原始访问身份不兼容。具体来说,以上链接指出: 更改为编辑模式: Web分发–单击“起源”选项卡,单击要编辑的起源,然后单击“编辑”。您只能为Origin类型为S3 Origin的Origin创建一个Origin访问标识。 基本上,为了设置正确的默认根对象,我们使用S3网站终结点而不是网站存储桶本身。这与使用原始访问身份不兼容。因此,我的问题归结为 是否可以为Cloudfront上的静态托管网站的所有子目录指定默认的根对象? 是否可以为从Cloudfront提供的内容(其来源是S3网站终结点而不是S3存储桶)设置来源访问身份?

5
Amazon S3静态网站的HTTPS [关闭]
关闭。此问题不符合堆栈溢出准则。它当前不接受答案。 想改善这个问题吗?更新问题,使其成为Stack Overflow的主题。 1年前关闭。 改善这个问题 我想使用Amazon S3和CloudFront托管仅HTTPS的静态网站。到目前为止,这是我所做的: 为静态网站托管设置一个S3存储桶,并将我的网站文件放入其中 创建一个CloudFront分发并将其指向S3存储桶 在我的域的名称服务器中为www指向CloudFront存储桶的子域添加了CNAME记录。 到目前为止,一切都很好-我可以使用该www.example.com地址访问我的网站。但是,我希望只能通过HTTPS访问该站点,为此我从GoDaddy购买了SSL证书。 现在,问题是: 有没有办法在我的S3托管网站上安装此第三方SSL证书? 有没有办法通过此设置自动将HTTP重定向到https?

4
CloudFront中的TTL 0有什么用?
几周前,亚马逊宣布降低了内容的有效期: Amazon CloudFront缩短了最小内容到期时间 如此之多,您现在实际上可以将CloudFront中的TTL设置为0。所以我的问题是,为什么将TTL设置为0的CloudFront分配很有用。对我来说,这意味着根本不缓存,因此每个到达CloudFront的请求最终会碰到原点。 我想念什么?

5
正确的S3 + Cloudfront CORS配置?
我的应用程序将图像存储在S3上,然后通过Cloudfront对其进行代理。我很高兴使用新的S3 CORS支持,以便可以使用HTML5 canvas方法(具有跨域策略),但似乎无法正确配置S3和Cloudfront。当我尝试将图像转换为画布元素时,仍然遇到“未捕获的错误:SECURITY_ERR:DOM异常18”。 这是我到目前为止的内容: S3 <CORSConfiguration> <CORSRule> <AllowedOrigin>MY_WEBSITE_URL</AllowedOrigin> <AllowedMethod>GET</AllowedMethod> <MaxAgeSeconds>3000</MaxAgeSeconds> <AllowedHeader>*</AllowedHeader> </CORSRule> <CORSRule> <AllowedOrigin>MY_CLOUDFRONT_URL</AllowedOrigin> <AllowedMethod>GET</AllowedMethod> <AllowedHeader>*</AllowedHeader> </CORSRule> </CORSConfiguration> 云前 起源 Origin Protocol Policy: Match Viewer HTTP Port: 80 HTTPS Port: 443 行为举止 Origin: MY_WEBSITE_URL Object Caching: Use Origin Cache Headers Forward Cookies: None Forward Query Strings: Yes 我在这里想念什么吗? 更新:刚刚尝试将标题更改为 <AllowedHeader>Content-*</AllowedHeader> …

3
Amazon CloudFront不尊重我的S3网站存储桶的index.html规则
我使用静态网站托管选项在Amazon S3上托管了一个静态网站,因此S3将呈现一个文件夹,而无需使我明确指向我的index.html文件。 例如,这是我S3存储桶中页面的直接链接:http : //new.rdegges.com.s3-website-us-east-1.amazonaws.com/category/2009/如您所见,何时您访问该URL时,Amazon S3会自动在该目录内呈现index.html文件,从而使我拥有干净的URL。 所有这些在S3上都可以正常工作。我遇到的问题是使Amazon Cloudfront也能正确处理此行为。当我以我的S3存储桶指定为源创建Cloudfront分发,并告诉它使用'index.html'作为根时,S3已经停止一起工作的index.html行为。 例如,这是我与Cloudfront相同的URL:http ://d1mj00c6pby3gc.cloudfront.net/category/2009/ 不幸的是,上面的URL不起作用,但是如果我手动指定索引文件,则可以,例如:http : //d1mj00c6pby3gc.cloudfront.net/category/2009/index.html 我的问题是:我该如何配置Cloudfront以使其尊重我的网站的S3存储桶设置?

2
Cloudfront使用ssl将www重定向到裸域[关闭]
关闭。此问题不符合堆栈溢出准则。它当前不接受答案。 想改善这个问题吗?更新问题,使其成为Stack Overflow的主题。 3年前关闭。 改善这个问题 原谅我是否曾经被问过,有很多资源可以解决这个问题,但是似乎没有什么适合我的特定(https)用例。 我正在尝试将https://www.example.com重定向到https://example.com。同样,这应该适用于http://www.example.com至https://example.com。 我已经建立了一个以s3存储桶为源的cloudfront发行版,将http重定向到https,添加了cname example.com并添加了我的域证书(适用于www子域以及裸域)。 我还建立了一个单独的发行版,其www.example.com的名称为cname,添加了证书并将源设置为单独的s3存储桶,该存储桶中的(静态网站托管)将所有请求重定向到https://example.com。 重定向按预期从http://example.com重定向到https://example.com,但是从http(s)://www.example.com重定向到https://example.com却没有。 在路由53中,我将根域别名化为第一个cloudfront分发,将www别名化为第二个。

14
Cloudfront自定义来源分发返回502“错误无法满足该请求。” 对于某些URL
我们拥有一个具有自定义来源的Cloudfront发行版,该发行版已经运行了很长时间了,可以为我们的一个站点提供静态资产。就在今天早上,我们注意到我们的徽标显示为断开的链接。 经过进一步调查,Cloudfront返回了一个我从未见过的有关该URL的奇怪错误消息: 错误 无法满足该请求。 由cloudfront(CloudFront)生成 此发行版中的其他几个Cloudfront URL返回相同的错误,但是其他(同样来自相同发行版)的URL正常运行。我看不到什么可行和无效的模式。 其他一些数据点: 该产地的URL工作得很好。据我所知,最近没有服务中断。 我专门使徽标URL无效,没有任何效果。 我已经使发行版的根URL无效,没有任何效果。 知道这里发生了什么吗?我以前从未见过Cloudfront这样做。 更新: 这是Cloudfront的逐字HTTP响应: $ http GET https://d2yu7foswg1yra.cloudfront.net/static/img/crossway_logo.png HTTP/1.1 502 Bad Gateway Age: 213 Connection: keep-alive Content-Length: 472 Content-Type: text/html Date: Wed, 18 Dec 2013 17:57:46 GMT Server: CloudFront Via: 1.1 f319e8962c0268d31d3828d4b9d41f98.cloudfront.net (CloudFront) X-Amz-Cf-Id: H_HGBG3sTOqEomHzHubi8ruLbGXe2MRyVhGBn4apM0y_LjQa_9W2Jg== X-Cache: Error from cloudfront <!DOCTYPE …

3
Amazon S3重定向和Cloudfront
我正在尝试使用对象在S3上设置301重定向,在此引用http://docs.aws.amazon.com/AmazonS3/latest/dev/how-to-page-redirect.html。我遇到了一些问题,似乎无法弄清楚我在做什么错。 我得到的是空白页(0字节文件),好像未设置“网站重定向位置”元数据值。 我究竟做错了什么? 此外,这在AWS CloudFront上是否有效? 我的S3控制台设置 需要注意的几件事: 我具有用于托管静态网站的此设置。我使用的是ssl / https,并且上传了自己的证书,并在cloudfront发行版中进行了设置。除重定向对象外,所有页面似乎都可以使用。我尝试设置路由规则,但是它们似乎在Cloudfront中不起作用。 我正在尝试通过cloudfront url和s3 url(https://s3.amazonaws.com/ {bucket} / users / sign_in)访问重定向
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.