• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            woaidongmao

            文章均收錄自他人博客,但不喜標題前加-[轉貼],因其丑陋,見諒!~
            隨筆 - 1469, 文章 - 0, 評論 - 661, 引用 - 0
            數據加載中……

            HTTP頭的Expires與Cache-control

            Cache-control 用于控制HTTP緩存(在HTTP/1.0中可能部分沒實現,僅僅實現了Pragma: no-cache

            數據包中的格式:

            Cache-Control: cache-directive

            cache-directive可以為以下:

            request時用到:

            | "no-cache"

            | "no-store"

            | "max-age" "=" delta-seconds

            | "max-stale" [ "=" delta-seconds ]

            | "min-fresh" "=" delta-seconds

            | "no-transform"

            | "only-if-cached"

            | "cache-extension"

            response時用到:

            | "public"

            | "private" [ "=" <"> field-name <"> ]

            | "no-cache" [ "=" <"> field-name <"> ]

            | "no-store"

            | "no-transform"

            | "must-revalidate"

            | "proxy-revalidate"

            | "max-age" "=" delta-seconds

            | "s-maxage" "=" delta-seconds

            | "cache-extension"

            部分說明:

            根據是否可緩存分為

            Public  指示響應可被任何緩存區緩存。

            Private  指示對于單個用戶的整個或部分響應消息,不能被共享緩存處理。這允許服務器僅僅描述當用戶的

            部分響應消息,此響應消息對于其他用戶的請求無效。

            no-cache  指示請求或響應消息不能緩存(HTTP/1.0Pragmano-cache替換)

            根據什么能被緩存

            no-store  用于防止重要的信息被無意的發布。在請求消息中發送將使得請求和響應消息都不使用緩存。

            根據緩存超時

            max-age  指示客戶機可以接收生存期不大于指定時間(以秒為單位)的響應。

            min-fresh  指示客戶機可以接收響應時間小于當前時間加上指定時間的響應。

            max-stale  指示客戶機可以接收超出超時期間的響應消息。如果指定max-stale消息的值,那么客戶機可以

            接收超出超時期指定值之內的響應消息。

            Expires

             表示存在時間,允許客戶端在這個時間之前不去檢查(發請求),等同max-age

            效果。但是如果同時存在,則被Cache-Controlmax-age覆蓋。

            格式:

            Expires = "Expires" ":" HTTP-date

            例如

            Expires: Thu, 01 Dec 1994 16:00:00 GMT (必須是GMT格式)

             

            2.應用

            通過HTTPMETA設置expirescache-control

            <meta http-equiv="Cache-Control" content="max-age=7200" />

            <meta http-equiv="Expires" content="Mon, 20 Jul 2009 23:00:00 GMT" />

            上述設置僅為舉例,實際使用其一即可。這樣寫的話僅對該網頁有效,對網頁中的圖片或其他請求無效,并不會做任何cache

            這樣客戶端的請求就多了,盡管只是檢查Last-modified狀態的東西,但是請求一多對瀏覽速度必定有影響。

            如果要對文件添加cache可以通過apachemod_expire模塊,寫法為

            <IfModule mod_expires.c>

            ExpiresActive On

            ExpiresDefault "access plus 1 days"

            </IfModule>

            記得ExpiresActive設為On,我起先沒設置On,似乎怎樣YSlow都查不到緩存機制。這樣添加的話就是默認所有的。

            如果要針對個別MIME類型則可以:

            ExpiresByType image/gif "access plus 5 hours 3 minutes"

            Apache Module mod_expires

            另外,當點擊瀏覽器上的刷新,客戶端發送的請求中均是max-age=0,表示validate操作,發送請求到服務器

            要求檢查cache,再更新cache,一般得到的是304 Not Modified,表示沒變動。

             

            posted on 2009-09-10 11:45 肥仔 閱讀(560) 評論(0)  編輯 收藏 引用 所屬分類: HTTP & URL

            亚洲国产成人精品91久久久 | 久久久久久午夜成人影院 | 国产亚州精品女人久久久久久| 色综合久久中文色婷婷| 久久久这里有精品中文字幕| 久久天天躁夜夜躁狠狠| 国产精品久久波多野结衣| 色婷婷狠狠久久综合五月| 久久人人爽人人爽人人片av高请| 色综合久久88色综合天天| 国产精品乱码久久久久久软件| 狠狠色丁香婷综合久久| 日韩久久久久中文字幕人妻| 日韩av无码久久精品免费| 久久精品国产欧美日韩| 久久久久亚洲AV无码网站| 青青久久精品国产免费看| 久久国产免费观看精品3| 性高朝久久久久久久久久| 99久久久精品| 久久亚洲精品中文字幕| 热RE99久久精品国产66热| 国产亚洲美女精品久久久| 久久久久久久97| 99久久精品免费看国产一区二区三区 | 久久久久国产视频电影| 国产亚洲婷婷香蕉久久精品| 18禁黄久久久AAA片| 久久午夜福利电影| 久久精品免费大片国产大片| 一本大道加勒比久久综合| 精品国产一区二区三区久久| 色综合久久综合中文综合网| 国产毛片欧美毛片久久久| 亚洲午夜精品久久久久久app| 久久久久人妻一区精品| 99久久国产热无码精品免费久久久久| 亚洲国产精品无码成人片久久| 亚洲精品无码专区久久同性男| 久久国产精品一区| 国产99久久久国产精免费|