国产激情自拍_国产9色视频_丁香花在线电影小说观看 _久久久久国产精品嫩草影院

首頁 > 編程 > PHP > 正文

php控制客戶端緩存

2020-03-22 20:09:41
字體:
供稿:網(wǎng)友
  • 1.關(guān)于HTTP消息

    詳見: http://www.runoob.com/http/http-messages.html
    http消息中請求頭是瀏覽器要告訴服務(wù)器的信息,而響應(yīng)頭是服務(wù)器要告訴客戶端的信息。這些頭的定義是HTTP協(xié)議定義好的,客戶端和服務(wù)器通過解析消息頭中信息來完成各自的工作。比如:請求頭中Accept-Language:zh-CN,zh;q=0.8 告訴服務(wù)器客戶端能接收的語言。

    2.響應(yīng)頭Cache-Control控制緩存

    這里寫圖片描述
    Cache-Control 一個(gè)用于定義緩存指令的通用頭標(biāo)。

    緩存策略:
    有用的 Cache-Control響應(yīng)頭信息包括:

    max-age=[秒] — 執(zhí)行緩存被認(rèn)為是最新的最長時(shí)間。類似于過期時(shí)間,這個(gè)參數(shù)是基于請求時(shí)間的相對時(shí)間間隔,而不是絕對過期時(shí)間,[秒]是一個(gè)數(shù)字,單位是秒:從請求時(shí)間開始到過期時(shí)間之間的秒數(shù)。s-maxage=[秒] — 類似于max-age屬性,除了他應(yīng)用于共享(如:代理服務(wù)器)緩存public — 標(biāo)記認(rèn)證內(nèi)容也可以被緩存,一般來說: 經(jīng)過HTTP認(rèn)證才能訪問的內(nèi)容,輸出是自動(dòng)不可以緩存的;private在服務(wù)器設(shè)置了private比如:Cache-Control:private, max-age=60的情況下,表示只有用戶的瀏覽器可以緩存private響應(yīng),不允許任何中繼Web代理對其進(jìn)行緩存 – 例如,用戶瀏覽器可以緩存包含用戶私人信息的HTML網(wǎng)頁,但是CDN不能緩存。no-cache — 強(qiáng)制每次請求直接發(fā)送給源服務(wù)器,而不經(jīng)過本地緩存版本的校驗(yàn)。這對于需要確認(rèn)認(rèn)證應(yīng)用很有用(可以和public結(jié)合使用),或者嚴(yán)格要求使用最新數(shù)據(jù)的應(yīng)用(不惜犧牲使用緩存的所有好處);no-store — 不做緩存must-revalidate — 告訴緩存必須遵循所有你給予副本的新鮮度。使用緩存的時(shí)候每次必須發(fā)送請求到服務(wù)器校驗(yàn),比如通過If-Modified-Since或If-None-Matchproxy-revalidate — 和 must-revalidate類似,除了他只對緩存代理服務(wù)器起作用,舉例:Cache-Control: max-age=3600, must-revalidate
    <?phpheader('Content-type:text/html;charset=utf-8');//用Cache-Control告訴瀏覽器有效期 5秒header('Cache-Control:max-age=5');//等同于Cache-Control:public, max-age=5$curr_time = date('Y-m-d H:i:s');echo '服務(wù)器時(shí)間:'.$curr_time;?><!DOCTYPE html><html><head><meta charset='utf-8'><title>Cache</title></head><body><br>    Time:<?php  echo $curr_time; ?><br>    <a href='cache_sample.php'>刷新時(shí)間</a></body></html>

    這里寫圖片描述

    3.響應(yīng)頭Expires控制緩存
    <?phpheader('Content-type:text/html;charset=utf-8');//用Cache-Control告訴瀏覽器有效期 5秒// header('Cache-Control:max-age=5');//等同于Cache-Control:public, max-age=5//設(shè)置10秒的有效期,時(shí)間格式是GMT//時(shí)間是當(dāng)前服務(wù)器時(shí)間 + 10秒$expires = gmdate('D, d M Y H:i:s', time() + 10) . ' GMT'; header('Expires:$expires');$curr_time = date('Y-m-d H:i:s');echo '服務(wù)器時(shí)間:'.$curr_time;?><!DOCTYPE html><html><head><meta charset='utf-8'><title>Cache</title></head><body><br>    Time:<?php  echo $curr_time; ?><br>    <a href='cache_sample.php'>刷新時(shí)間</a></body></html>

    這里寫圖片描述
    expires的弊端是有效期以服務(wù)器時(shí)間設(shè)置,如果客戶端的時(shí)間和服務(wù)端時(shí)間有一定的時(shí)間差,緩存的控制就有問題了,所以還是建議使用Cache-Control好!

    上面的代碼如果同時(shí)設(shè)置了

    header('Cache-Control:max-age=5');$expires = gmdate('D, d M Y H:i:s', time() + 10) . ' GMT'; //這個(gè)設(shè)置將無效header('Expires:$expires');

    Cache-Control(支持) 和 expires 同時(shí)設(shè)置有效期,以 Cache-Control設(shè)置的有效期為準(zhǔn)

    4.通過HTTP 304: Not Modified 使用緩存

    (1)響應(yīng)頭包含 Expires, max-age的話,“打開新窗口”、“地址欄輸入url回車”這些瀏覽器行為不會(huì)使瀏覽器在Expires, max-age設(shè)置的有效期時(shí)間內(nèi)去訪問服務(wù)器,而是在緩存中去獲取內(nèi)容,但是”刷新’”或”F5” 例外。
    (2)訪問服務(wù)器,根據(jù)服務(wù)器響應(yīng)來獲取內(nèi)容。這種情況發(fā)生在設(shè)置了Cache-Control:no-cache 是否使用緩存必須要通過服務(wù)器驗(yàn)證,或者是設(shè)置了 Expires,max-age但瀏覽器行為是“刷新”或“F5”時(shí)候。’Last-Modified’、’ETag’、’must-revalidate’ 等有些特殊,不直接受瀏覽器行為影響,它們必須訪問服務(wù)器后,再由服務(wù)器判斷是直接發(fā)送新的資源,還是發(fā)送一個(gè)304 Not Modfied讓瀏覽器使用緩存中的資源。

    注意: CTRL+ F5是強(qiáng)制刷新。

    這里寫圖片描述
    ETag全稱Entity Tag,用來標(biāo)識(shí)一個(gè)資源。在具體的實(shí)現(xiàn)中,ETag可以是資源的hash值,也可以是一個(gè)內(nèi)部維護(hù)的版本號。但不管怎樣,ETag應(yīng)該能反映出資源內(nèi)容的變化,這是Http緩存可以正常工作的基礎(chǔ)。Last-Modified的原理其實(shí)和ETag差不多,Last-Modified通過時(shí)間來標(biāo)識(shí)資源。通過這樣的方式可以不必每次都獲取全部的資源達(dá)到更新的目的,能極大的節(jié)省服務(wù)器的開銷,更有利于搜素引擎的抓取。

    <?phpheader('Content-type:text/html;charset=utf-8');header('Cache-Control:no-cache');//響應(yīng)頭Last-Modified$lastmodified = filemtime('./cache.php');$lastmodifiedGMT = gmdate('D, d M Y H:i:s',$lastmodified). ' GMT';header('Last-Modified:$lastmodifiedGMT');//響應(yīng)頭ETag$etag = md5_file('./cache.php');header('ETag:$etag');if (@$_SERVER['HTTP_IF_MODIFIED_SINCE'] == $lastmodifiedGMT ||    @trim($_SERVER['HTTP_IF_NONE_MATCH']) == $etag) {        header('HTTP/1.1 304 Not Modified');        exit;    }//返回304后,下面的內(nèi)容不會(huì)向?yàn)g覽器返回,而瀏覽器會(huì)使用之前的緩存   $curr_time = date('Y-m-d H:i:s');echo '服務(wù)器時(shí)間:'.$curr_time;?><!DOCTYPE html><html><head><meta charset='utf-8'><title>Cache</title></head><body><br>    Time:<?php  echo $curr_time; ?><br>    <a href='cache_sample.php'>刷新時(shí)間</a></body></html>

    這里寫圖片描述

    引用:
    [1]寫給后端程序員的HTTP緩存原理介紹
    [2]面向站長和網(wǎng)站管理員的Web緩存加速指南[翻譯]
    [3]緩存Cache詳解

    PHP編程

    鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請第一時(shí)間聯(lián)系我們修改或刪除,多謝。

  • 發(fā)表評論 共有條評論
    用戶名: 密碼:
    驗(yàn)證碼: 匿名發(fā)表
    国产激情自拍_国产9色视频_丁香花在线电影小说观看 _久久久久国产精品嫩草影院
    免费a级毛片在线观看| 不卡av免费观看| 国产原创在线播放| 超碰国产在线观看| 懂色一区二区三区| 日本中文字幕在线视频| 国产原创精品视频| 国产精品入口麻豆电影| 伊人色综合网| 国产麻豆精品高清在线播放| 国产探花在线观看| 在线免费国产| 午夜影院在线| 国产一区二区三区美女秒播| 91欧洲在线视精品在亚洲| 亚洲第一成人在线视频| 国产精品一区二区三区四区色| 国产黄在线观看| 欧美性受xxxx免费视频| 国产精品视频福利一区二区| 午夜亚洲成人| 国产youjizz在线| 国产乱子视频| 免费av不卡在线观看| 精品三级久久久久久久电影聊斋| 黄色在线视频观看网站| 6699久久国产精品免费| 美女av在线播放| 91亚洲天堂| 国产一二三区在线视频| 国产又色又爽又黄刺激在线视频| 精品一区二区观看| 国产精品欧美色图| 午夜国产视频| 国产乱子视频| 国产精品一区二三区| 久久久久久久美女| 欧美精品日韩少妇| 日本亚洲欧美| 永久免费av网站| 96久久久久久| 在线观看国产福利视频| 五月婷婷视频在线观看| 国产在线视频网站| 六月天色婷婷| 国产美女视频一区二区三区| 九色在线网站| 五月亚洲综合| 国产精品白浆视频免费观看| 国产成人精品综合网站| 国产精品免费视频二三区| 国产在线观看18| 国产麻豆视频网站| 国产午夜在线视频| 国产国产国产国产国产国产 | 国产黄色一级片| 中文字幕有码在线视频| 国产一级免费看| 国产视频福利| 精品视频麻豆入口| 亚洲成人国产综合| 88av在线| av中文天堂在线| 91超碰免费在线| 亚洲最新永久观看在线| www.成人.com| 国产精品免费视频二三区| 99综合精品久久| 麻豆国产视频| 国产精品一区二区资源| 伊人av免费在线观看| 黄色网页网址在线免费| 精品欧美色视频网站在线观看| 免费看av大片| 99热播在线观看| 国产一二三区在线| 免费精品国产自产拍观看| 国产精品99爱免费视频| 开心丁香婷婷深爱五月| 91亚洲欧美| 国产一二在线观看| 黄色在线视频观看网站| 在线国产一级| 91精品大全| 高清在线观看av| www.99av| 亚洲精品影视在线| 国产亚洲精品久久久网站好莱| www亚洲天堂| 亚洲第一成年免费网站| 国产亚洲精品久久久久久移动网络 | av高清资源| 国产九色porn网址| 国产在线高潮| 久久综合第一页| 亚洲欧美精选| 日本福利在线| 免费看av大片| 麻豆网站在线| xxxxx中文字幕| www狠狠操| 亚洲精品aaaa精品| 人日人天天爽| 超碰在线中文| 中文字幕在线观看日本| 免费精品国产自产拍在| 久艹在线视频| 中文字幕在线免费视频| 国产高清在线观看| 精品国产福利一区二区在线| 永久免费不卡在线观看黄网站 | 中文乱码字幕高清在线观看| 精品国产高清自在线一区二区三区| 国产精品被窝福利一区| 91av福利| 青草视频在线播放| 国产精品一区在线看| 国产激情在线视频| 四虎成人免费| 国产中文伊人| 国产精品欧美韩国日本久久| 国产福利三区| 欧美一级久久久久久久久大| 91sp网站在线观看入口| 国产成人亚洲欧美电影| v天堂福利视频在线观看| 国产美女在线一区二区三区| 精品国产一区二区三区久久久狼牙| 亚洲精品天堂在线| 中文字幕一区二区三区免费视频| 992tv在线观看在线播放| 欧洲有码在线视频| 国产特黄在线| 久久国产热视频| 国产精品久久在线| 国产在线观看91| av男人的天堂网| 国产日韩欧美第一页| 激情五月色综合亚洲小说| 国产porn在线| 国产日本在线| 福利在线观看| 久久综合精品视频| 99re在线视频播放| 精品视频一区二区观看| 国产乱xxⅹxx国语对白| 欧美日韩一区二区三区在线播放| 国产色在线 com| 高潮毛片在线观看| 亚洲精品影视在线| 国产91足控脚交在线观看| 国产理论电影在线| 国产中文字幕在线观看| 另类专区欧美| 久草福利资源在线视频| 久色视频在线观看| аⅴ成人天堂中文在线| 一级黄色av| 在线观看中文| 四虎影视成人永久免费观看视频| 在线一二三区| 天天插天天操| 色综合久久五月天| www免费在线观看视频| 91欧美在线视频| 99久热re在线精彩视频| 在线免费观看你懂的| 亚洲综合天堂网| 青青草视频在线观看| 久久99亚洲网美利坚合众国| 男人天堂99| 导航福利在线| 国产福利在线看| 亚洲综合色视频在线观看 | 精品国产一区二区三区久久久狼牙 | 97视频网站| 在线午夜视频| 欧洲一区av| 国产有码在线| 国产成人综合美国十次| 在线观看中文字幕一区| eeuss影院在线观看| 国产在线麻豆精品| 国产黄色片在线播放| 在线久久视频| 天天操夜夜操天天射| 在线亚洲不卡| 午夜视频在线看| 精品国内一区二区三区免费视频| 亚洲综合在线网| 国产香蕉尹人视频在线| 四虎久久影院| 国产国产国产国产国产国产| 青青久在线视频免费观看| 国产欧美一区二区三区小说| 女人色在线免费视频| 国产夫妻视频| 国产乱码在线| 国自产拍在线网站网址视频| 亚洲夜夜综合|