PHP快取靜態

2022-01-12 13:56:41 字數 952 閱讀 5184

三大快取技術:

瀏覽器快取  :

瀏覽器接收伺服器返回的資料,每接收到一定的資料量,才展示到頁面.

程式快取:

php語言在執行過程中,每次產生的輸出,都先存放在程式快取空間,當整個程式執行結束,再返回給apache或nginx ,最後返回到瀏覽器,程式快取是語言底層實現的,開發者無法操控和感知。

ob快取:

php語言提供的快取,是可以被開發者操控的。如果開啟,則所有的php的輸出,先進入ob快取,在進入程式快取,最後返回給apache或nginx。

ob快取常用函式

ob_start():開啟ob快取

ob_get_clean();獲取然後清除ob快取內容,獲取之後,ob快取內容被刪除,不存在了。

ob_get_contents():獲取ob快取內容,獲取快取後,ob快取內容依然存在。

ob_get_flush():獲取並送出ob快取內容,送出到程式快取。之後ob快取內容沒了。

ob_clean():清空ob快取(刪除)

ob_end_clean():清空並關閉ob快取

ob_end_flush():送出並關閉ob快取

ob快取實現靜態頁面:

可以使用file_put_contents函式將字串寫入檔案

filemtime函式獲取檔案上次被寫入的時間

file_exists判斷是否存在目錄或檔案

用這些函式可以實現快取靜態檔案

偽靜態:

通過重寫機制實現看url是靜態網頁,其實訪問到的是動態網頁

可以通過apache重寫機制進行配置

loadmodule rewrite_module modules/mod_rewrite.so

可以開啟這個重寫模式

allowoverride all

修改虛擬主機配置檔案

PHP 靜態快取

今天來說說php頁面的靜態快取。根據個人理解,由於客戶端重複的請求某個頁面,導致該頁面短時間內被重複請求相同的資料,導致給服務端一定的壓力,同時使用者訪問速度也會變慢。此時如果把這個頁面快取起來,客戶端請求這個快取頁面速度就很快,都不用查詢資料庫的。並不是每個頁面都適合做快取,頁面要保證短時間內請求...

php快取 靜態頁面

大家會問什麼是快取!能幹什麼!其實快取相當於記憶體。儲存一段時間!快取就是我們執行東西時候不用在執行資料庫了。直接執行我們的快取就ok了 一般來說,快取的目的是把資料放在乙個地方讓訪問的更快點,毫無疑問,記憶體是最快的,但是,幾百m的資料能往記憶體 放麼?這不現實,當然,有的時候臨時放如伺服器快取,...

php靜態檔案快取示例

開始緩衝區 ob start cache file cache 4.3 static.html cache time 1 設定快取更新時間 if file exists cache file time cache time filemtime cache file echo 這是乙個快取檔案內容!f...