你的Web頁面的速度是否已經(jīng)足夠快了?其實可能還有很多可以提升的地方。讓我們跟隨匯仁智杰網(wǎng)絡推廣來看一下雅虎的Web優(yōu)化的最佳實踐。
1、內容優(yōu)化
盡量減少HTTP請求:常見方法包括合并多個CSS文件和JavaScript文件,利用CSS Sprites整合圖像,Imagemap(圖像中不同的區(qū)域設置不同的鏈接),內聯(lián)圖象(使用 data: URL scheme 在實際的頁面嵌入圖像數(shù)據(jù))等。
減少DNS查找,避免重定向,使Ajax可緩存
延遲加載組件:考慮哪些內容是頁面呈現(xiàn)時所必需首先加載的、哪些內容和結構可以稍后再加載,根據(jù)這個優(yōu)先級進行設定。
預加載組件:預加載是在瀏覽器空閑時請求將來可能會用到的頁面內容(如圖像、樣式表和腳本)。當用戶要訪問下一個頁面時,頁面中的內容大部分已經(jīng)加載到緩存中了,因此可以大大改善訪問速度。
減少DOM元素數(shù)量:頁面中存在大量DOM 元素,會導致JavaScript遍歷DOM的效率變慢。
根據(jù)域名劃分頁面內容:把頁面內容劃分成若干部分可以使你最大限度地實現(xiàn)平行下載。但要確保你使用的域名數(shù)量在2個到4個之間(否則與第2條沖突)。
最小化iframe的數(shù)量:iframes
提供了一個簡單的方式把一個網(wǎng)站的內容嵌入到另一個網(wǎng)站中。但其創(chuàng)建速度比其他包括JavaScript和CSS的DOM元素的創(chuàng)建慢了1-2個數(shù)量級。
避免404:HTTP請求時間消耗是很大的,因此使用HTTP請求來獲得一個沒有用處的響應(例如404沒有找到頁面)是完全沒有必要的,它只會降低用戶體驗而不會有一點好處。
2、 服務器優(yōu)化
使用內容分發(fā)網(wǎng)絡(CDN):把你的網(wǎng)站內容分散到多個、處于不同地域位置的服務器上可以加快下載速度。
添加Expires或Cache-Control信息頭:對于靜態(tài)內容,可設置文件頭過期時間Expires的值為“Never
expire(永不過期)”;對于動態(tài)內容,可使用恰當?shù)腃ache-Control文件頭來幫助瀏覽器進行有條件的請求。
Gzip壓縮
設置ETag:ETags(Entitytags,實體標簽)是web服務器和瀏覽器用于判斷瀏覽器緩存中的內容和服務器中的原始內容是否匹配的一種機制。
提前刷新緩沖區(qū):當用戶請求一個頁面時,服務器會花費200到500毫秒用于后臺組織HTML文件。在這期間,瀏覽器會一直空閑等待數(shù)據(jù)返回。在PHP中,可以使用flush()方法,它允許你把已經(jīng)編譯的好的部分HTML響應文件先發(fā)送給瀏覽器,這時瀏覽器就會可以下載文件中的內容(腳本等)而后臺同時處理剩余的HTML頁面。
對Ajax請求使用GET方法:當使用XMLHttpRequest時,瀏覽器中的POST方法會首先發(fā)送文件頭,然后才發(fā)送數(shù)據(jù)。因此使用GET最為恰當。
希望您通過以上的優(yōu)化建議可以輕松找到影響你的Web頁面性能的瓶頸,輕松實現(xiàn)Web頁面性能的提升。
如果您還有更多更好的方法歡迎關注微信號huirenzhijie進行分享!