Google分析代碼到底會不會影響網(wǎng)頁性能?本地托管ga.js是否可行?本文提供本地服務(wù)器托管ga.js的基本思路與實現(xiàn)方法。
Google Anlytics 分析代碼是異步加載的,一般來講不會影響網(wǎng)頁性能,但是技術(shù)部的網(wǎng)頁性能報告里老是提到ga.js的狀態(tài)為Aborted。出現(xiàn)請求Aborted狀態(tài),意思著這個請求被終止,原因很簡單,因為我們處于某個特定地區(qū)的網(wǎng)絡(luò)環(huán)境(你懂的)。那如何解決非GA代碼請求ga.js的加載速度?網(wǎng)上找到的方案不多于三種,但基本上都是修改跟蹤代碼,比如刪除http:與https:的判斷、忽略cookie殘缺性檢查等。但是筆者認為:提高ga.js可用性的徹底辦法是“本地托管ga.js,將ga.js移植到本地服務(wù)器”。本文經(jīng)過實測,與站長/SEO朋友們分享一下實現(xiàn)過程。
本地化ga.js:本地托管ga.js文件,網(wǎng)頁性能/加載時間神馬的都是浮云
Google分析代碼到底會不會影響網(wǎng)頁性能?
跟一些站長,或者網(wǎng)站數(shù)據(jù)分析師們交流時發(fā)現(xiàn),大部分人的觀點是“因為GA跟蹤是異步跟蹤模式,所以不會影響頁面性能”。在這一點上,SEO祥子倒有自己的保留意見:是的,2009年底,google analytics推出GA異步跟蹤代碼,性能相比以前的同步跟蹤代碼在網(wǎng)頁性能方面有了跨越式的提升。但是,祥子根據(jù)多年做站與SEO的經(jīng)驗,GA并非有了異步跟蹤就萬無一失了!
1。首先,我們要基于一個前提,GA使用的是異步統(tǒng)計模式,大大提高網(wǎng)頁性能。但是我們不能忽略:客戶端瀏覽器仍然要下載大約為35.9KB的ga.js文件,而這個文件是從位于美國 加利福尼亞州的Google服務(wù)器上下載。
2。我們的網(wǎng)絡(luò)環(huán)境不是非常理想,雖然GOOGLE服務(wù)器的可能性很高, 但是對中國用戶來講,成功連接率有明顯影響。我曾經(jīng)查閱過相關(guān)的資料,中國用戶打開www.google.com的可用率為92%左右,www.google-analytics.com/ga.js 的可能率高很多,但是也就是99.2%上下。這是2011年的數(shù)據(jù),進入2012年,情況更糟糕,Google analytics網(wǎng)站更難打開。
3。ga.js瀏覽器緩存周期為12小時,而且用戶訪問使用GA分析的不同網(wǎng)站,加載的是同一個ga.js文件。意味著用戶訪問不同網(wǎng)站時不需重復(fù)加載文件。這是個很好的消息。 但是,鑒于google在中國大陸用戶的連通率,現(xiàn)在使用GA分析系統(tǒng)的網(wǎng)站不是太多;受ga.js 12小時緩存周期的影響,如果用戶是12小時前瀏覽過使用GA的網(wǎng)站,將重新加載文件;還有部分沒有瀏覽器從來沒有加載過ga.js的用戶就更不用說了,網(wǎng)頁性能肯定受到影響。
綜上所述,GA代碼雖然對網(wǎng)頁性能影響的幾率很小,但對部分用戶來講仍有加載ga.js文件失敗的風險。
本地托管ga.js是否可行?
那么,將ga.js本地化能否有效跟蹤訪問?ga.js是否允許本地化?
查閱了google analytics幫助中心“本地托管 ga.js 文件”,Google是充許ga.js本地托管的,不過,它似乎并不鼓勵這么做。
以下為GOOGLE關(guān)于ga.js本地化的說明:
(http://support.google.com/analytics/bin/answer.py?hl=zh-Hanscbrank=3cbid=-1wzhmp8d849huanswer=1032389)
GOOGLE幫助中心:本地托管 ga.js 文件
雖然您可以下載文件進行檢查,但我們建議用戶不要自行托管 ga.js。
大部分人希望在本地托管 ga.js,是為了避免網(wǎng)站訪問者在每次請求網(wǎng)頁時都要從 Google 下載該文件。然而,無論 ga.js托管在何處,它都只需下載一次,然后就會緩存(保存)在訪問者的瀏覽器中,以便用于后續(xù)網(wǎng)頁瀏覽。
因此,對于您和您的訪問者來說,從 Google 的服務(wù)器中引用 ga.js 文件最有利。這樣能夠確保您使用的是最新版本:只要有新功能和其他改進,立刻就會提供給您。這將有助于我們盡可能確保您報告的準確性。
本地服務(wù)器托管ga.js的基本思路:
托管ga.js到本地服務(wù)器的思路非常簡單:
1。用程序下載ga.js到本地服務(wù)器;
2。定期檢查ga.js文件,保持本地服務(wù)器為最新版本的文件;
3。修改并將跟蹤代碼植入網(wǎng)頁;
4。成功發(fā)做分析數(shù)據(jù),GA帳戶接收報表。
從google服務(wù)器下載ga.js文件到本地服務(wù)器,更新周期--每天。
值得一提的是,ga.js文件會不定期的更新內(nèi)容,如果使用舊版本的ga文件,可能導致跟蹤出現(xiàn)問題,所以需要保持本地服務(wù)器ga.js為最新版本,我想一天更新一次,應(yīng)該沒有問題。
在網(wǎng)頁里植入GA代碼
本地服務(wù)器已有最新版本的ga.js文件,只需修改頁面內(nèi)跟蹤代碼即可,修改的主要內(nèi)容就是把ga.src修改即可。如果你的網(wǎng)站不使用https://,那么可以對代碼進行簡化,刪除網(wǎng)頁是http:或https:的判斷即可。以下為測試代碼,經(jīng)過驗證,GA接收數(shù)據(jù)正常。
script type="text/javascript">
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-232915-7']);
_gaq.push(['_trackPageview']);
(function() {
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
ga.src ='http://www.giigift.com/本地服務(wù)器目錄/ga.js';
//因為不需判斷頁面是否屬于https:
//可以把ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
//改為:ga.src ='你的本地ga.js地址';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();
/script>
作者:SEO祥子