[英]google analytics serverside tracking
我正在嘗試跟蹤移動應用程序的使用,該應用程序從用PHP編寫的數據源獲取數據。 所以我目前正在使用這個腳本。
http://code.google.com/p/serversidegoogleanalytics/
但對我來說最重要的是在谷歌分析中查看用戶的位置。 但這似乎不可用。
有人能做到這一點。
我創建事件,如網站上的示例所示,但訪問者的位置始終設置為美國,我相信這就是我的服務器所在的位置。
編輯 :我以前的回答有點不正確。 我修改了它。
通常,Google Analytics不會自行明確傳遞位置信息; 相反,它依賴於用戶的IP地址。 也就是說,當Google Analytics向Google Analytics“發送”數據時,它向Google Analytics服務器發出HTTP請求,並使用請求代理的IP地址來確定位置。 (同樣的方法用於確定用戶的瀏覽器,因為HTTP請求將User-Agent標頭發送到Google的服務器。)
但是,事實證明,在官方Google Analytics for Mobile庫中 ,有一個特殊參數utmip,您可以通過該參數來模擬此行為並為您提供正確的地理位置報告。 您可以下載該庫以查看如何在PHP中實現它(它似乎不會傳遞整個IP地址。)
看來,為了使用此功能,您必須將您的帳戶名稱傳遞為MO-XXX-X,而不是UA-XXX-X
提醒:在下面給出的服務器端代碼段中,將您的Google Analytics網絡媒體資源ID上的前綴從UA-更改為MO-。 例如,如果您的網絡媒體資源ID為UA-12345-67,則可以在服務器端代碼段中使用MO-12345-67。
他們的PHP庫還顯示了如何欺騙用戶代理以匹配用戶代理,以便您可以收集相關的瀏覽器信息。
查看http://code.google.com/p/php-ga ,這可能是GA最強大的服務器端實現庫。 它也解決了這個問題: http : //code.google.com/p/php-ga/issues/detail?id = 9 。
我已經調整了代碼google供應以嘗試發送請求用戶的IP地址,所以類似於:
// Construct the gif hit url.
string utmUrl = utmGifLocation + "?" +
"utmwv=" + Version +
"&utmn=" + GetRandomNumber() +
"&utmhn=" + HttpUtility.UrlEncode(domainName) +
"&utmr=" + HttpUtility.UrlEncode(documentReferer) +
"&utmp=" + HttpUtility.UrlEncode(documentPath) +
"&utmac=" + account +
"&utmcc=__utma%3D999.999.999.999.999.1%3B" +
"&utmvid=" + visitorId +
//"&utmip=" + GetIP(Request.ServerVariables["REMOTE_ADDR"]);
"&utmip=" + GetIP(Request.UserHostAddress);
SendRequestToGoogleAnalytics(utmUrl);
但在谷歌分析中,我只看到托管服務器在德國而不是最終用戶的位置。
有誰知道utmip是否仍在工作/支持? 它似乎只是使用上面代碼運行的IP地址而不是我傳遞的請求者的IP地址。
(PS - 我已經檢查過並使用正確的MO - ????跟蹤ID)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.