99999久久久久久亚洲,欧美人与禽猛交狂配,高清日韩av在线影院,一个人在线高清免费观看,啦啦啦在线视频免费观看www

熱線電話:13121318867

登錄
首頁精彩閱讀網(wǎng)站分析指標中為什么UV數(shù)與IP數(shù)有時候會不一致
網(wǎng)站分析指標中為什么UV數(shù)與IP數(shù)有時候會不一致
2015-01-15
收藏

網(wǎng)站分析指標中為什么UV數(shù)與IP數(shù)有時候會不一致


很多用戶在使用網(wǎng)站分析工具(譬如百度統(tǒng)計)查看網(wǎng)站流量時候,會發(fā)現(xiàn)網(wǎng)站的IP數(shù)和UV數(shù)不一致,有時UV數(shù)比IP數(shù)大,有時UV數(shù)比IP數(shù)小,這種情況感覺怪異。那么兩者為什么會不一致呢?在什么時候大,什么時候???在了解這個問題前,需要先弄清楚UV、IP以及cookie等幾個概念。

1、UV和IP的含義

UV:Unique Visitor的簡稱,訪客數(shù)的意思,一天之內網(wǎng)站的獨立訪客數(shù)(這個是通過cookie作為依據(jù)得出的結果),一天中同一個訪客無論訪問您網(wǎng)站多少次也只計算1個訪客(UV)。UV是根據(jù)Cookie來的,Cookie會根據(jù)多終端和多瀏覽器受影響。

IP:Internet Protocol的簡稱,網(wǎng)絡之間互連的協(xié)議的意思,中文簡稱網(wǎng)協(xié)。一天之內的獨立IP數(shù)訪問您的網(wǎng)站,一天內相同IP地址多次訪問網(wǎng)站只被計算1次。

關于Cookie的解釋:http://baike.baidu.com/view/835.htm

2、為什么UV和IP會不一致呢?
情況一:UV大于IP,這種情況就是在網(wǎng)吧、學校、公司等,公用相同IP的場所中不同的用戶,或者多種不同瀏覽器訪問您網(wǎng)站,那么UV數(shù)會大于IP數(shù)。

情況二:UV小于IP,這種情況就是在家庭中大多數(shù)電腦使用ADSL撥號上網(wǎng),所以同一個用戶在家里不同時間訪問您網(wǎng)站時,IP可能會不同,因為它會根據(jù)時間變動IP,即動態(tài)的IP地址,但是實際訪客數(shù)唯一,便會出現(xiàn)UV數(shù)小于IP數(shù)。

3、什么情況下UV會比IP少?

但有些情況下,有可能UV數(shù)會小于IP數(shù):

1、IP地址是絕對的,從TCP鏈路上取的,真實的,不唯一的;

2、UV設置的Cookie,隨機設置的,可重復的,只是重復概率比較小;

3、經(jīng)常移動上網(wǎng)不固定地點,如筆記本、平版電腦、移動等終端普及,不時的更換IP,可以導致這種問題;

4、有些客戶端為了保證更高級別的安全,關閉了Cookie的功能導致Cookie設置不上,或者有些用戶經(jīng)常清除Cookie,會出現(xiàn)這種問題;

4、通過IP和cookie來判斷問題

cookie判斷的問題:

1.客戶端關閉了Cookie的功能

2.經(jīng)常清除Cookie(現(xiàn)在的瀏覽器有方便的cookie清除功能和自動清除設定功能)

3.同一個訪客采用不同瀏覽器瀏覽同一個網(wǎng)站,cookie值是不同的,而IP是相同的

IP判斷的問題:

1.局域網(wǎng)內IP不同,有時候可以獲取內網(wǎng)IP。

2.每次撥號上網(wǎng)分配的IP不同。

5、IP和cookie到底哪個跟適合用來判斷唯一訪客?

無法用一個單一指標準確判斷,但唯一訪客的數(shù)量基本介于cookie數(shù)和IP數(shù)之間?;究梢赃@么認為:

1、Cookie相同,IP不同,同一個訪客

2、Cookie不同,IP相同,可能是同一個訪客,比如用了不同瀏覽器,或清除了cookie等情況

3、Cookie不同,IP不同,可能不是同一個訪客,比如重新?lián)芴柸缓笥钟昧似渌鼮g覽器上網(wǎng)等情況

4、Cookie相同,IP相同,同一個訪客

數(shù)據(jù)分析咨詢請掃描二維碼

若不方便掃碼,搜微信號:CDAshujufenxi

數(shù)據(jù)分析師考試動態(tài)
數(shù)據(jù)分析師資訊
更多

OK
客服在線
立即咨詢
客服在線
立即咨詢
') } function initGt() { var handler = function (captchaObj) { captchaObj.appendTo('#captcha'); captchaObj.onReady(function () { $("#wait").hide(); }).onSuccess(function(){ $('.getcheckcode').removeClass('dis'); $('.getcheckcode').trigger('click'); }); window.captchaObj = captchaObj; }; $('#captcha').show(); $.ajax({ url: "/login/gtstart?t=" + (new Date()).getTime(), // 加隨機數(shù)防止緩存 type: "get", dataType: "json", success: function (data) { $('#text').hide(); $('#wait').show(); // 調用 initGeetest 進行初始化 // 參數(shù)1:配置參數(shù) // 參數(shù)2:回調,回調的第一個參數(shù)驗證碼對象,之后可以使用它調用相應的接口 initGeetest({ // 以下 4 個配置參數(shù)為必須,不能缺少 gt: data.gt, challenge: data.challenge, offline: !data.success, // 表示用戶后臺檢測極驗服務器是否宕機 new_captcha: data.new_captcha, // 用于宕機時表示是新驗證碼的宕機 product: "float", // 產(chǎn)品形式,包括:float,popup width: "280px", https: true // 更多配置參數(shù)說明請參見:http://docs.geetest.com/install/client/web-front/ }, handler); } }); } function codeCutdown() { if(_wait == 0){ //倒計時完成 $(".getcheckcode").removeClass('dis').html("重新獲取"); }else{ $(".getcheckcode").addClass('dis').html("重新獲取("+_wait+"s)"); _wait--; setTimeout(function () { codeCutdown(); },1000); } } function inputValidate(ele,telInput) { var oInput = ele; var inputVal = oInput.val(); var oType = ele.attr('data-type'); var oEtag = $('#etag').val(); var oErr = oInput.closest('.form_box').next('.err_txt'); var empTxt = '請輸入'+oInput.attr('placeholder')+'!'; var errTxt = '請輸入正確的'+oInput.attr('placeholder')+'!'; var pattern; if(inputVal==""){ if(!telInput){ errFun(oErr,empTxt); } return false; }else { switch (oType){ case 'login_mobile': pattern = /^1[3456789]\d{9}$/; if(inputVal.length==11) { $.ajax({ url: '/login/checkmobile', type: "post", dataType: "json", data: { mobile: inputVal, etag: oEtag, page_ur: window.location.href, page_referer: document.referrer }, success: function (data) { } }); } break; case 'login_yzm': pattern = /^\d{6}$/; break; } if(oType=='login_mobile'){ } if(!!validateFun(pattern,inputVal)){ errFun(oErr,'') if(telInput){ $('.getcheckcode').removeClass('dis'); } }else { if(!telInput) { errFun(oErr, errTxt); }else { $('.getcheckcode').addClass('dis'); } return false; } } return true; } function errFun(obj,msg) { obj.html(msg); if(msg==''){ $('.login_submit').removeClass('dis'); }else { $('.login_submit').addClass('dis'); } } function validateFun(pat,val) { return pat.test(val); }