PHP 網(wǎng)頁(yè)過(guò)期時(shí)間的控制代碼
更新時(shí)間:2009年06月29日 21:51:24 作者:
有時(shí)我們需要控制主頁(yè)之類的網(wǎng)頁(yè)過(guò)期時(shí)間。但我們比如使用的是Chinacache的CDN,那要怎么樣設(shè)計(jì)才能讓他緩存我的內(nèi)容.
當(dāng)然,前提要先打開(kāi)CDN中一個(gè)功能reload_into_ims on.這樣用戶發(fā)送過(guò)來(lái)no-cache也不怕了.因?yàn)檫@樣會(huì)給給no-cache轉(zhuǎn)成If-Modified-Since .所以我們寫(xiě)程序主要是對(duì)If-Modified-Since控制就好了.記的,緩存系統(tǒng)架構(gòu)中計(jì)中最好是后端來(lái)控制,所以最好的方法是程序來(lái)管理過(guò)期. 呵,我只會(huì)php,就用php寫(xiě)一個(gè),別的程序也是一樣。
見(jiàn)我下面的程序,呵呵,5分鐘過(guò)期.
<?php
$headers = apache_request_headers();
$client_time = (isset($headers['If-Modified-Since']) ? strtotime($headers['If-Modified-Since']) : 0);
$now=gmmktime();
$now_list=gmmktime()-60*5;
if ($client_time<$now and $client_time >$now_list){
header('Last-Modified: ‘.gmdate('D, d M Y H:i:s', $client_time).' GMT', true, 304);
exit(0);
}else{
header('Last-Modified: ‘.gmdate('D, d M Y H:i:s', $now).' GMT', true, 200);
}
?>
見(jiàn)我下面的程序,呵呵,5分鐘過(guò)期.
復(fù)制代碼 代碼如下:
<?php
$headers = apache_request_headers();
$client_time = (isset($headers['If-Modified-Since']) ? strtotime($headers['If-Modified-Since']) : 0);
$now=gmmktime();
$now_list=gmmktime()-60*5;
if ($client_time<$now and $client_time >$now_list){
header('Last-Modified: ‘.gmdate('D, d M Y H:i:s', $client_time).' GMT', true, 304);
exit(0);
}else{
header('Last-Modified: ‘.gmdate('D, d M Y H:i:s', $now).' GMT', true, 200);
}
?>
相關(guān)文章
PHP中判斷foreach循環(huán)的第一個(gè)或者最后一個(gè)健名
我們知道在PHP中,根據(jù)鍵的數(shù)據(jù)類型,數(shù)組分為索引數(shù)組與關(guān)聯(lián)數(shù)組,索引數(shù)組判斷foreach循環(huán)的當(dāng)前健名很簡(jiǎn)單,使用關(guān)鍵字就可以獲取,關(guān)聯(lián)數(shù)組怎么判斷當(dāng)前健名呢,我們從for循環(huán)找到靈感,本文介紹PHP中判斷foreach循環(huán)的第一個(gè)或者最后一個(gè)健名已經(jīng)當(dāng)前健名的方法2024-01-01
詳解WordPress中簡(jiǎn)碼格式標(biāo)簽編寫(xiě)的基本方法
這篇文章主要介紹了詳解WordPress中簡(jiǎn)碼格式標(biāo)簽編寫(xiě)的基本方法,文中講到了添加和移除簡(jiǎn)碼等的一些PHP函數(shù)的用法,需要的朋友可以參考下2015-12-12
php數(shù)據(jù)結(jié)構(gòu) 算法(PHP描述) 簡(jiǎn)單選擇排序 simple selection sort
一次選定數(shù)組中的每一個(gè)數(shù),記下當(dāng)前位置并假設(shè)它是從當(dāng)前位置開(kāi)始后面數(shù)中的最小數(shù)min=i,從這個(gè)數(shù)的下一個(gè)數(shù)開(kāi)始掃描直到最后一個(gè)數(shù),并記錄下最小數(shù)的位置min,掃描結(jié)束后如果min不等于i,說(shuō)明假設(shè)錯(cuò)誤,則交換min與i位置上數(shù)。2011-08-08
php 實(shí)現(xiàn)賬號(hào)不能同時(shí)登陸的方法分析【當(dāng)其它地方登陸時(shí),當(dāng)前賬號(hào)失效】
這篇文章主要介紹了php 實(shí)現(xiàn)賬號(hào)不能同時(shí)登陸的方法,結(jié)合實(shí)例形式分析了PHP基于session實(shí)現(xiàn)當(dāng)其它地方登陸時(shí),當(dāng)前賬號(hào)失效的相關(guān)操作技巧,需要的朋友可以參考下2020-03-03
php實(shí)現(xiàn)異步數(shù)據(jù)調(diào)用的方法
這篇文章主要介紹了php實(shí)現(xiàn)異步數(shù)據(jù)調(diào)用的方法,分享了4種PHP異步執(zhí)行的常用方式,感興趣的小伙伴們可以參考一下2015-12-12
PHP使用swoole編寫(xiě)簡(jiǎn)單的echo服務(wù)器示例
這篇文章主要介紹了PHP使用swoole編寫(xiě)簡(jiǎn)單的echo服務(wù)器,結(jié)合實(shí)例形式分析了基于swoole的echo服務(wù)器客戶端與服務(wù)器端相關(guān)實(shí)現(xiàn)技巧及操作注意事項(xiàng),需要的朋友可以參考下2020-03-03

