最近在搞一个统计访问来源的东东,用Request.ServerVariables["HTTP_REFERER"]上级来源。
发现从:search.tom.com过来,就得到内容了。而像google,baidu等搜索引擎过来,都能正常取到其上一页的访问来源。查了一下,发现HTTP_REFERER不能获取到以下几种类型的来源:
1.从收藏夹链接
2.单击'主页'或者自定义的地址
3.利用Jscript的location.href or location.replace()
4.在浏览器直接输入地址
5.<%Response.Redirect%>
6.<%Response.AddHeader%>或<meta http-equiv=refresh>转向
7.用XML加载地址 想请教各位大位,有其他方法获得以上7种的访问来源吗。我用的是C#开发的,用了里面的Request.UrlReferrer也得不到来源于tom.com的访问地址。请教各位大位。小弟在这里感谢大家。
发现从:search.tom.com过来,就得到内容了。而像google,baidu等搜索引擎过来,都能正常取到其上一页的访问来源。查了一下,发现HTTP_REFERER不能获取到以下几种类型的来源:
1.从收藏夹链接
2.单击'主页'或者自定义的地址
3.利用Jscript的location.href or location.replace()
4.在浏览器直接输入地址
5.<%Response.Redirect%>
6.<%Response.AddHeader%>或<meta http-equiv=refresh>转向
7.用XML加载地址 想请教各位大位,有其他方法获得以上7种的访问来源吗。我用的是C#开发的,用了里面的Request.UrlReferrer也得不到来源于tom.com的访问地址。请教各位大位。小弟在这里感谢大家。
而不是表示,浏览器中转到这个页面之前的那个页面
============================
1.从收藏夹链接
这种情况,确实没有Referer
2.单击'主页'或者自定义的地址
同上
3.利用Jscript的location.href or location.replace()
用脚本直接设置location.href和在地址栏输入是一样的,所以,同上
4.在浏览器直接输入地址
同上
5.<%Response.Redirect%>
这个没注意过,可能不同浏览器的处理方式不一样
6.<%Response.AddHeader%>或<meta http-equiv=refresh>转向
这个也没注意过
7.用XML加载地址
如果是用XMLHTTP加载,可以addRequestHeader('Referer',location.herf);来传递Referer给请求的URL。不过大部分程序都没有写这个
你就能取道,如果没有,那就是没有了