簡單來講就是客戶端與伺服器在建立連結後,伺服器會主動將內容傳送給客戶端並建立快取,這樣之後瀏覽網站時,會請求資料就直接從快取中讀取出來,就不會在從伺服器下載回來,也並且大幅提升了載入速度。
何謂是 HTTP/2 Server Push?
舉例子好了,假如一個頁面裡有三個不同的資源文件,分別為 page.html、style.css、image.png 檔案,在請求 page.html 資源文件的時候,伺服器不僅快取了 page.html 內容,也會同時將 style.css、image.png 的檔案直接 Push 給客戶端,下次請求這兩個資源文件時,就可以直接從快取中讀取了。
HTTP/2 Server Push 將內容傳送到客戶端,而無需等待載入時間直接呈現。並且結合 HTTP/2 加速支援,Server Push 就能夠顯著減少載入網站所需的請求資料的數量。
要如何使用 Server Push?
CloudFlare 支援 HTTP/2 Server Push,可以透過 WordPress 安裝 CloudFlare 外掛套件並且啓用它。
若要使用此功能,您必須首先確保在您的網站有綁在 CloudFlare 上面以及安裝外掛套件,但您的網站主機必須要有支援 HTTP/2,否則腳本可能無法使用。
安裝 WordPress 外掛套件
首先登錄到 WordPress 儀表板,點外掛套件頁面,搜尋 “CloudFlare”,然後安裝它並且啓用。
然後,可以到設置地方,並點擊 “CloudFlare” 選單選項,您會看到登入頁面,輸入您的註冊帳號跟 API Key填上去。
要查詢 API Key,在 CloudFlare 儀表板右上角的下拉式選單並點擊 “My Settings”,該頁面上找到 Global API Key 頁面,點 View API Key 就看到 API Key。
登入後,在 Apply Default Settings 頁面,來啓用優化套用自動配置完成。
(如有自訂的話,可不用按)
wp-config.php 加入代碼啓用
CloudFlare 外掛套件配置完成後,把 wp-config.php 編輯內容裡,加入以下配置代碼即可啓用 HTTP/2 Server Push 傳送。
define('CLOUDFLARE_HTTP2_SERVER_PUSH_ACTIVE', true);
輸入完成並且保存後,就會啓用 HTTP/2 Server Push 請求數據,可在 Chrome 開發工具裡查詢 (按 F12 呼叫),您會看到有 “Push” 字眼,表示啓用成功。
HTTP/2 Server Push 使用前注意事項
HTTP/2 Server Push 是一項功能強大的性能功能優勢,由於所需的往返請求資源數量次數減少,能提供一些明顯著的性能提升。但是,如下所述,使用 HTTP/2 Server Push 有可能要注意事項。
- 傳送請求資源數量太多的話,實際上性能會多多少少緩慢異常現象。
- 當伺服器主機被斷線,則傳送請求資料會將丟失。
- HTTP/2 Server Push 是最適合用於在快取頁面所需的備用資源。