自己做统计 网站如何判断访客来源

翅膀的初衷

发表于2014-06-11 22:04:46

相信很多人都用过站长统计工具,国内用得最多的是cnzz与51.la。在这些统计工具中,我们不仅可以详细的看到每个网站的访量(IP,UV,PV),还可以看到每个访客的来源,甚至是基来哪个搜索引擎,那个关键词。

在这里,我给大家讲讲这个功能的实现原理!

HTTP referer,中文名HTTP来源地址,在维基百科中的解释是这样的:HTTP来源地址(referer,或HTTP referer),是HTTP表头的一个字段,用来表示从哪儿链接到目前的网页。

换句话来说,我们通常只要从表头就可以获取网页的来源地址。

首先来看实现代码:

c#

string strReferrer = Request.ServerVariables("http_referrer"); string strReferrer = Request.UrlReferrer.ToString();

asp

strReferrer = Request.ServerVariables("HTTP_REFERER").Item;

PHP

$strReferrer = $_SERVER["HTTP_REFERER"];

javascript:

var strReferrer = document.referrer;

至于判断是否来源于搜索引擎,只要看来源地址中是否包含baidu.google等关键词即可,同时,在该URL中,也可以看到用户的搜索词,比如:比百度为例:http://www.baidu.com/link?url=4BOpSxA3gB-cFQxCPqWNqwNZ56kzazKP0wel2QtU9ma16-vBSXPBym_WI6x0XjqZ&wd=jntemplate&issp=1&ie=utf-8&tn=baiduhome_pg&inputT=489

其中wd就是用户的搜索关键词。

至于获取用户分辨率也可以用JS获轻松取到,操作系统,浏览器等信息也可以从useragent获得。甚至用户的点击区域分新,也可以通过JS的鼠标点击事件

 原创文章,转载请注明出处