原理,將動態的頁面,儲存為靜態的html靜態頁,使瀏覽器直接請求該靜態頁。
測試:乙個php動態頁面與乙個靜態頁面所消耗的時間
一般可以使用apache自帶的ab(apache bench)程式來測試。
> ab -c 併發數 -n 請求數 請問位址
整體統計息:平均每個請求的時間消耗時
響應時間的分割槽統計:
實現技術
需要的核心技術是ob,output_buffer輸出緩衝。
開啟輸出緩衝
ob_start();
獲取內容
ob_get_contents(); 獲取內容,不清空緩衝
ob_get_clean(); 獲取內容,並清空緩衝
ob_get_flush(); 獲取內容,並重新整理,讓瀏覽器顯示
清空ob_clean();
ob_get_clean();
ob_end_clean(); 清掉緩衝並關閉
重新整理ob_flush(); 重新整理緩衝
ob_get_flush(); 獲取緩衝,並重新整理
ob_end_flush(): 重新整理並關閉緩衝
關閉ob_end_flush();
ob_end_clean();
(*在指令碼週期結束時,重新整理操作會自動執行。)
<?php
ob_start();
//php執行**... ...
$contents = ob_get_contents();
//生成靜態檔案的名字和路徑可自定義
$staticfile = './html/' . $id . '.html';
file_put_contents($staticfile, $contents);
ob_end_clean();
擴充套件問題
1、靜態頁面中動態資料問題,需要使用ajax。
2、管理大量靜態檔案時,需要分目錄,分硬碟,分檔案伺服器。
3、整站靜態化,內容聚合頁和內容詳情頁,詳情頁適合做靜態化。
4、靜態化內容,一旦資料改動,需要重新生成靜態頁面。
PHP 頁面靜態化 純靜態化 偽靜態化
概念 php靜態化分為 純靜態化 和 偽靜態化 純靜態化又分為 區域性靜態化 和 完全靜態化 純靜態化 是把php生成的動態頁面儲存成靜態的html檔案,使用者訪問該靜態頁面,而不是使用者每一次訪問都重新生成一張相同的網頁,優點就是減小伺服器開銷,區域性靜態化 是生成的靜態檔案中,有區域性的資料還是...
PHP 頁面靜態化 純靜態化 偽靜態化
概念 php靜態化分為 純靜態化 和 偽靜態化 純靜態化又分為 區域性靜態化 和 完全靜態化 純靜態化 是把php生成的動態頁面儲存成靜態的html檔案,使用者訪問該靜態頁面,而不是使用者每一次訪問都重新生成一張相同的網頁,優點就是減小伺服器開銷,區域性靜態化 是生成的靜態檔案中,有區域性的資料還是...
php頁面靜態化
目前cms系統多採用了頁面靜態化,這樣做的好處是 一是能減輕其伺服器的負擔,二是因為生成了html靜態頁面,所以其 被搜尋引擎搜尋到的機率更大一些,也就是為了 推廣。1 頁面靜態化分類 真靜態 通過程式生成靜態頁面檔案,當我們訪問的時候,就是直接訪問的靜態頁面。偽靜態 是動態的 看起來像靜態的 換句...