觸屏版
全國(guó)服務(wù)熱線:0571-87205688
登錄
注冊(cè)
客戶中心
關(guān)注云客
一般來(lái)說(shuō),訪客都不喜歡用太多的時(shí)間去等待網(wǎng)頁(yè)的打開(kāi),等待的越長(zhǎng),用戶直接關(guān)閉網(wǎng)頁(yè)的可能性就越大,這樣就會(huì)損失很多流量!其次,關(guān)鍵字排名與網(wǎng)頁(yè)的打開(kāi)速度也有關(guān)系,這個(gè)主要體現(xiàn)搜索引擎對(duì)用戶體驗(yàn)度上,用戶體驗(yàn)度好,排名相對(duì)其它網(wǎng)站就好些。
因此覺(jué)得各位站長(zhǎng)有必要去提高網(wǎng)頁(yè)的打開(kāi)速度,這個(gè)不需要太多的成本投入,只需要平時(shí)多注意一些小技巧就行了,下面就為大家分享20種方法幫你提高網(wǎng)站訪問(wèn)速度,縮短網(wǎng)頁(yè)加載時(shí)間。
1、減少頁(yè)面HTTP請(qǐng)求數(shù)量
比較直接的理解就是要減少調(diào)用其他頁(yè)面、文件的數(shù)量。
(1)、我們?cè)谑褂胏ss格式控制的時(shí)候,經(jīng)常會(huì)采用background載入很多圖形文件,每個(gè)background的圖像至少產(chǎn)生1次HTTP請(qǐng)求,一般我們?yōu)榱俗岉?yè)面生動(dòng)活潑會(huì)大量使用background來(lái)加載背景圖,要改善這個(gè)狀況,可以采用css的1個(gè)有用的background-position屬性來(lái)加載背景圖,建議將需要頻繁加載的多個(gè)圖片合成為1個(gè)單獨(dú)的圖片,需要加載時(shí),采用以下形式加載即可將這部分圖片加載的HTTP請(qǐng)求縮減為1個(gè):
(2)、采用Image maps,這個(gè)方法也比較常用,只是限于同1個(gè)區(qū)域使用。
(3)、Inline images,這個(gè)方法很少見(jiàn)到,但對(duì)于很小很簡(jiǎn)單的圖像卻是很實(shí)用的。
2、添加文件過(guò)期或緩存頭
對(duì)于同一用戶頻繁訪問(wèn)的圖片、Js腳本文件等可以在Apache或Nginx設(shè)置其緩沖時(shí)間,例如設(shè)置24小時(shí)過(guò)期時(shí)間,這樣用戶在訪問(wèn)過(guò)該頁(yè)面之后再次訪問(wèn)時(shí),同一組圖片或JS不會(huì)再重復(fù)下載,從而減少了HTTP請(qǐng)求,用戶訪問(wèn)速度明顯有所提升,同時(shí)服務(wù)器負(fù)載也會(huì)下降。
下面給出nginx配置中緩存控制的例子:
3、服務(wù)器開(kāi)啟gzip壓縮
這個(gè)大家都比較了解,即將需要傳輸?shù)膬?nèi)容壓縮后傳輸?shù)娇蛻舳嗽俳鈮?,這樣在網(wǎng)絡(luò)上傳輸?shù)臄?shù)據(jù)量會(huì)大幅減小。
通常在服務(wù)器上的Apache、Nginx可以直接開(kāi)啟這個(gè)設(shè)置,也可以從代碼角度直接設(shè)置傳輸文件頭,增加gzip的設(shè)置,也可以從 負(fù)載均衡設(shè)備直接設(shè)置,不過(guò)需要留意的是,這個(gè)設(shè)置會(huì)略微增加服務(wù)器的負(fù)擔(dān)。
4、css格式定義放置在文件頭部
這項(xiàng)設(shè)置對(duì)于用戶端是慢速網(wǎng)絡(luò)或網(wǎng)頁(yè)內(nèi)容比較龐大的情況比較有利,可以在網(wǎng)頁(yè)逐步呈現(xiàn)的同時(shí)仍會(huì)保持格式信息,不影響網(wǎng)頁(yè)美感。
5、Javascript腳本放在文件末尾
很多Javascript腳本執(zhí)行效率低下,或者有的第3方域名腳本出現(xiàn)意外無(wú)法載入,如果將這些腳本放置到頁(yè)面比較靠前的位置,可能會(huì)導(dǎo)致我們自己網(wǎng)站的內(nèi)容載入速度下降甚至無(wú)法正常加載,所以,一般將這些腳本放置在網(wǎng)頁(yè)文件末尾,一定要放置在前面的腳本要改用所謂的 后載入 方式加載,在主體網(wǎng)頁(yè)加載完成后再加載,防止其影響到主體網(wǎng)頁(yè)的加載速度。
6、避免使用CSS腳本(CSS Expressions)
有時(shí)為了要css的參數(shù)動(dòng)態(tài)改變,可能會(huì)采用css expression來(lái)實(shí)現(xiàn),但這樣做得不償失,會(huì)使用戶端瀏覽器負(fù)擔(dān)明顯加重,所以,不建議這樣做,如果需要改變,可以使用Javascript腳本去實(shí)現(xiàn)。
7、css、javascript改由外部調(diào)用
如果css、js內(nèi)容比較龐大,盡量不要寫(xiě)到同1個(gè)頁(yè)面中去,改由外部載入比較妥當(dāng),因?yàn)闉g覽器本身會(huì)對(duì)css、js文件進(jìn)行緩存。
8、使用多域名負(fù)載網(wǎng)頁(yè)內(nèi)的多個(gè)文件、圖片
記得有資料說(shuō)明,IE在網(wǎng)頁(yè)載入過(guò)程中,在同1時(shí)刻,對(duì)同1域名并行加的HTTP請(qǐng)求數(shù)量最高為2個(gè),如果網(wǎng)頁(yè)需要加載的文件數(shù)量超過(guò)2個(gè)(通常遠(yuǎn)遠(yuǎn)超過(guò)),要加快網(wǎng)頁(yè)訪問(wèn)速度,最好將文件分布到多個(gè)域名,例如19樓,其js文件采用獨(dú)立的域名,據(jù)說(shuō)百度的圖片服務(wù)器數(shù)量在20臺(tái)以上。
9、縮減iframe的使用,如無(wú)必要,盡量不要使用
iframe通常用于不同域名內(nèi)容的加載,這同時(shí)也可能因iframe內(nèi)容加載速度影響到主網(wǎng)頁(yè)加載速度,如果可能,把需要加載的內(nèi)容抓取到本地直接嵌入。如果實(shí)在需要iframe加載,采用后載入方式實(shí)現(xiàn)。
10、壓縮Javascript、CSS代碼
一般js、css文件中存在大量的空格、換行、注釋,這些利于閱讀,如果能夠壓縮掉,將會(huì)很有利于網(wǎng)絡(luò)傳輸,這方面的工具也有很多,一般可以保留開(kāi)發(fā)版本,利用工具生成生產(chǎn)版本,2個(gè)文件比較,一般壓縮率能達(dá)到50%以上,減少的數(shù)據(jù)量還是比較可觀的,具體的工具軟件可使用。
我這個(gè)博客剛改版完成,各種代碼還沒(méi)有進(jìn)行優(yōu)化和壓縮,目前yslow評(píng)級(jí)只能達(dá)到D,等有時(shí)間進(jìn)行部分優(yōu)化,達(dá)到C等級(jí)應(yīng)該問(wèn)題不大。
11、避免腳本重復(fù)調(diào)用
養(yǎng)成良好的開(kāi)發(fā)維護(hù)習(xí)慣,盡量避免腳本重復(fù)調(diào)用,因?yàn)檫^(guò)多的腳本重復(fù)調(diào)用不但會(huì)使網(wǎng)頁(yè)代碼顯得很臃腫,也會(huì)因?yàn)槟_本文件太多拖延網(wǎng)頁(yè)的打開(kāi)速度。
12、優(yōu)化圖片文件
優(yōu)化圖片文件,減小其尺寸,特別是縮略圖,一定要按尺寸生成縮略圖然后調(diào)用,不要在網(wǎng)頁(yè)中用resize方法實(shí)現(xiàn),雖然這樣看到的圖片外形笑了,但是其加載的數(shù)據(jù)量一點(diǎn)也沒(méi)減少。曾經(jīng)見(jiàn)過(guò)有人在網(wǎng)頁(yè)中加載的縮略圖,其真實(shí)尺寸有10M之巨。
普通圖像、icon也要盡可能壓縮后,可以采用web圖像保存、減少顏色數(shù)等等方法實(shí)現(xiàn)。
13、配置ETags
ETag全稱為Entity Tag,意思是實(shí)體標(biāo)簽,從名字上看,是對(duì)于某種實(shí)體的一個(gè)標(biāo)識(shí),它屬于HTTP協(xié)議的一部分,也就是所有的Web服務(wù)器都應(yīng)該(也確實(shí)能)支持這個(gè)特性。
它的作用是用一個(gè)特殊的字符串來(lái)標(biāo)識(shí)某個(gè)資源的 版本 ,客戶端(瀏覽器)來(lái)請(qǐng)求的時(shí)候,可以比較,如果ETag一致,則表示該資源并沒(méi)有修改過(guò),客戶端(瀏覽器)可以使用自己緩存的版本。
14、Ajax采用緩存調(diào)用
這個(gè)的使用可以參照Discuz論壇代碼,里面對(duì)于大量使用的Ajax調(diào)用都采用了緩存 調(diào)用方式,一般采用附加特征參數(shù)方式實(shí)現(xiàn)。
不過(guò),要提醒大家注意其中的特征參數(shù)(如下圖所示),這個(gè)參數(shù)不變化就使用緩存文件,如果發(fā)生變化則重新下載新文件或更新信息。
15、合理使用Flush
用戶端發(fā)送瀏覽請(qǐng)求后,服務(wù)器端一般要花銷200-500ms去處理這些請(qǐng)求,在此期間,用戶端瀏覽器處于等待狀態(tài),如果要減少用戶等待時(shí)間,可以在適當(dāng)?shù)奈恢檬褂胒lush,將已經(jīng)就緒的內(nèi)容推送到用戶端,這在php中很容易實(shí)現(xiàn)例如:
16、Ajax調(diào)用盡量采用GET方法調(diào)用
實(shí)際使用XMLHttpRequest時(shí),如果使用POST方法實(shí)現(xiàn),會(huì)發(fā)生2次HTTP請(qǐng)求,而使用GET方法只會(huì)發(fā)生1次HTTP請(qǐng)求。如果改用GET方法,HTTP請(qǐng)求減少50%!
17、盡可能減少DCOM元素
這個(gè)很好理解,就是盡可能減少網(wǎng)頁(yè)中各種 元素?cái)?shù)量,這種的冗余很嚴(yán)重,而我們完全可以用取代之。
18、避免采用302轉(zhuǎn)向
301是永久性跳轉(zhuǎn),302是臨時(shí)性跳轉(zhuǎn),一般情況下都是301跳轉(zhuǎn),很少人用302的,301跳轉(zhuǎn)是讓從一個(gè)網(wǎng)站轉(zhuǎn)移到另一個(gè)網(wǎng)站上,302跳轉(zhuǎn)的還是在原來(lái)的網(wǎng)站上,只用于臨時(shí)的跳轉(zhuǎn),當(dāng)然,一般使用這些跳轉(zhuǎn)的,都需要一定的時(shí)間來(lái)緩沖,如果302跳轉(zhuǎn)用的時(shí)間過(guò)長(zhǎng),可能會(huì)被百度判斷為作弊,會(huì)被k站。
19、采用分頁(yè)的方式展現(xiàn)
當(dāng)頁(yè)面內(nèi)容龐大到一定程度,可以采用分頁(yè)的方式展現(xiàn),或者taobao的那種翻頁(yè)后載入方式,這樣可以最大程度的減少單頁(yè)面的打開(kāi)速度,提高頁(yè)面的打開(kāi)速度。
20、使用CDN(Content Delivery Network)網(wǎng)絡(luò)加速
現(xiàn)在國(guó)內(nèi)做CDN加速業(yè)務(wù)的公司很多,簡(jiǎn)單講,就是將你的圖片、視頻擴(kuò)散到CDN網(wǎng)絡(luò)所能到達(dá)之處,讓用戶訪問(wèn)時(shí)能就近下載到這些文件,從而達(dá)到網(wǎng)絡(luò)提速的目的,這樣做,同時(shí)能減輕你自己網(wǎng)站的負(fù)載。
如何做好網(wǎng)站內(nèi)頁(yè)的SEO優(yōu)化
如何做好站內(nèi)主題內(nèi)容模型的SEO優(yōu)化
如何處理網(wǎng)站中的無(wú)效頁(yè)面
如何以SEO的角度來(lái)優(yōu)化網(wǎng)站的URL連接地址
如何利用SEO技術(shù)來(lái)做網(wǎng)站頁(yè)面優(yōu)化
百度更喜歡網(wǎng)站內(nèi)頁(yè)排名
如何做好站內(nèi)網(wǎng)頁(yè)圖片的SEO優(yōu)化
如何做好站內(nèi)網(wǎng)頁(yè)圖片的SEO優(yōu)化
百度更喜歡網(wǎng)站內(nèi)頁(yè)排名
如何利用SEO技術(shù)來(lái)做網(wǎng)站頁(yè)面優(yōu)化
評(píng)論(0人參與,0條評(píng)論)
發(fā)布評(píng)論
最新評(píng)論