php頁面靜態化—觸發系統生成純靜態化頁面的三種方式

觸發系統生成純靜態化頁面的三種方式:


一、頁面添加緩存時間;

給純靜態的html文件設定一個有效時間,如3600秒,即一個小時;

當我們訪問系統或網站時,首先判斷是否存在這個純靜態的html文件或者這個純靜態的html文件是否過期;

如:

if(file_exists($htmlFile)||(time()-mktime(filemtime($htmlFile)))<3600){include($htmlFile);}

else{重新生成一個新的純html文件;}

如果存在這個純靜態的html文件或者這個純靜態的html文件沒有過期,就直接加載這個純html文件,

否則,就重新生成一個新的純html文件;


二、手動觸發方式;

當我們訪問系統或網站時,不需要進行判斷,(假定這個純html文件存在)直接訪問這個純html文件。

(假定後臺有一個手動更新按鈕),當點擊手動更新按鈕後,觸發更新程序,全部重新生成新的html文件,

以達到全部重新更新的目的;


三、crontab定時掃描程序;

crontab是linux服務器中的一個定時執行任務的工具;

使用它就可以定時生成新的純靜態的html文件,以達到定時更新的目的;

基本格式 : 
*  *  *  *  *  command 
分  時   日   月   周     命令 
第1列表示分鐘1~59 每分鐘用*或者 */1表示 
第2列表示小時1~23(0表示0點) 
第3列表示日期1~31 
第4列表示月份1~12 
第5列標識號星期0~6(0表示星期天) 
第6列要運行的命令 

crontab文件的一些例子: 
30 21 * * * /usr/local/etc/rc.d/lighttpd restart 
上面的例子表示每晚的21:30重啓apache。 
45 4 1,10,22 * * /usr/local/etc/rc.d/lighttpd restart 
上面的例子表示每月1、10、22日的4 : 45重啓apache。 
10 1 * * 6,0 /usr/local/etc/rc.d/lighttpd restart 
上面的例子表示每週六、週日的1 : 10重啓apache。 
0,30 18-23 * * * /usr/local/etc/rc.d/lighttpd restart 
上面的例子表示在每天18 : 00至23 : 00之間每隔30分鐘重啓apache。 
0 23 * * 6 /usr/local/etc/rc.d/lighttpd restart 
上面的例子表示每星期六的11 : 00 pm重啓apache。 
* */1 * * * /usr/local/etc/rc.d/lighttpd restart 
每一小時重啓apache 
* 23-7/1 * * * /usr/local/etc/rc.d/lighttpd restart 
晚上11點到早上7點之間,每隔一小時重啓apache 
0 11 4 * mon-wed /usr/local/etc/rc.d/lighttpd restart 
每月的4號與每週一到週三的11點重啓apache 
0 4 1 jan * /usr/local/etc/rc.d/lighttpd restart 
一月一號的4點重啓apache 




發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章