2011-08-16 76 views
2

1 - 這是一個有效的緩存控制標題:CloudFront的圖像緩存控制頭

Cache-Control: max-age=86400, s-maxage=3600 

2 - 我想設置緩存控制標頭的對象從S3到CloudFront的服務。圖像不會經常變化,但有時可以。這看起來像是一個好的緩存控制嗎? CloudFront應每60分鐘重新驗證一次,但用戶將緩存一整天。 (我不太擔心個人用戶,更擔心繼續爲新用戶提供陳舊的形象)。

3-是否還有其他標題我應該使用? (即代理重新驗證)

它不容易在S3對象上更改這些設置,所以我試圖在第一次就把它弄好。謝謝。

回答

0

這是我得到了什麼工作:

Cache-Control: max-age=29030400, public 
Expires: Wed, 30 Dec 2015 18:00:00 GMT 

從理論上講,你只需要一個或另一個。但是,整個瀏覽器使用S3和CloudFront進行緩存一直是我背後的一大痛苦,所以我喜歡將它們都放在那裏。而且我也把我的.htaccess文件中的以下內容:

# BEGIN Caching 
Header set Cache-Control "max-age=29030400, public" 
<IfModule mod_expires.c> 
    ExpiresActive On 
    ExpiresDefault "access plus 1 year" 
    ExpiresByType text/css "access plus 1 year" 
    ExpiresByType text/plain "access plus 1 year" 
    ExpiresByType image/gif "access plus 1 year" 
    ExpiresByType image/png "access plus 1 year" 
    ExpiresByType image/jpeg "access plus 1 year" 
    ExpiresByType application/x-javascript "access plus 1 year" 
    ExpiresByType application/javascript "access plus 1 year" 
    ExpiresByType application/x-icon "access plus 1 year" 
</IfModule> 
# END Caching 
0

我只是做它用

  1. 訪問控制,最大年齡(設置在S3 CORS設定)
  2. 的cache工作控制
  3. 期滿

在理論上和從AWS S3 /的Cloudfront文檔,僅1.將作品。實際上,這兩者都需要。

Keith