繁体   English   中英

Rails + Heroku + Cloudfront和S3缓存

[英]Rails + Heroku + Cloudfront & S3 Cache

我正在测试我的网站,并收到警报,我没有为通过S3 / Cloudfront服务的静态图像配置任何资产缓存。 我几乎所有的get请求都返回“ X-Cache:Cloudfront中的小姐”响应。 我只是在几天前进行了设置,所有教程都说要配置每个项目并手动添加标题。 我有一个6k图标的素材资源库,所以我宁愿在不必设置上传标题的情况下进行处理。

我使用design.cdn.getsprk.com指向我的Cloudfront帐户,该帐户指向我的s3作为来源。 我在Heroku上使用Rails。

我还使用直接s3链接,cloudfront和自定义域测试了标头。 没有人显示正确的标题。

我附加了Cloudfront的配置设置。

示例图标:design.cdn.getsprk.com/icons/space/flat/11-neil-armstrong.svg

请求标头:

GET /icons/space/flat/11-neil-armstrong.svg HTTP/1.1
Host: design.cdn.getsprk.com
Connection: keep-alive
Cache-Control: max-age=0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.86 Safari/537.36
DNT: 1
Accept-Encoding: gzip, deflate, sdch
Accept-Language: en-US,en;q=0.8
If-None-Match: "746b7f4bce35cf3e6a8c965207087631"
If-Modified-Since: Tue, 10 Nov 2015 23:59:32 GMT

响应:

Connection:keep-alive
Date:Mon, 16 Nov 2015 22:29:05 GMT
ETag:"746b7f4bce35cf3e6a8c965207087631"
Last-Modified:Tue, 10 Nov 2015 23:59:32 GMT
Server:AmazonS3
Via:1.1 483919577b54800dcfc93dcd11176f74.cloudfront.net (CloudFront)
X-Amz-Cf-Id:mliY9nJt-2KEyu3aPpsxLm-Vd1LTKLRWYj9dTmfg54Mui0SKVhHL-g==
X-Cache:Miss from cloudfront

Cloudfront配置: Cloudfront设定

您似乎正在发出条件请求,请注意是否存在If-None-Match / If-Modified-Since。 如果对象不在缓存中,它将始终是Miss。您可以尝试在浏览器中按Ctrl + F5发出无条件请求吗?

curl --compressed -v -o /dev/null design.cdn.getsprk.com/icons/space/flat/11-neil-armstrong.svg
* About to connect() to design.cdn.getsprk.com port 80 (#0)
*   Trying 54.192.144.164...
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0* connected
* Connected to design.cdn.getsprk.com (54.192.144.164) port 80 (#0)
> GET /icons/space/flat/11-neil-armstrong.svg HTTP/1.1
> User-Agent: curl/7.26.0
> Host: design.cdn.getsprk.com
> Accept: */*
> Accept-Encoding: deflate, gzip
> 
* additional stuff not fine transfer.c:1037: 0 0
* HTTP 1.1 or later with persistent connection, pipelining supported
< HTTP/1.1 200 OK
< Content-Type: image/svg+xml
< Content-Length: 7702
< Connection: keep-alive
< Date: Wed, 18 Nov 2015 00:43:12 GMT
< Last-Modified: Tue, 10 Nov 2015 23:59:32 GMT
< ETag: "746b7f4bce35cf3e6a8c965207087631"
< Accept-Ranges: bytes
< Server: AmazonS3
< Age: 9094
< **X-Cache: Hit from cloudfront**
< Via: 1.1 43ff408868c37128de942a235a1225f2.cloudfront.net (CloudFront)
< X-Amz-Cf-Id: G7VwUZ3l15YnxjbZaeZmeeqSaj_E4OszrsS2sSfFjqkh1ZlTOXoKEg==
< 
{ [data not shown]
100  7702  100  7702    0     0  70606      0 --:--:-- --:--:-- --:--:--  104k
* Connection #0 to host design.cdn.getsprk.com left intact
* Closing connection #0

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM