统计网站总访问量时,怎样排除公司内部的访问

还真是第一次看到这种需求,想了想,没想到啥比较优的方案,有个相对变态的方案,仅供参考: 假定网站是 http://www.a.com 统计代码在这个网站;开另外一个域名 http://demo.a.com,这个网站做301跳转,跳转到http://www.a.com;http://www.a.com的统计代码,加入判断,判断来访者是从http://demo.a.com跳转过来的,不进行统计(如果整站所有页面都要统计的话,可能会涉及到cookie的操作),否则,进行统计;要求公司职员在公司内访问网站的时候,使用http://demo.a.com去访问; 补充: http://demo.a.com 不能对外宣传;robots.txt严格限制各种机器人;或者直接使用类似 http://5ef045eb055004ea.a.com 这种域名(请职员都保存在收藏夹)。 基本上没考虑效率的问题。个人愚见,仅供参考 针对 FaJn 留言的补充:1 网站统计访问量一般有两种方法,一是有程序,每次有访客来访问的时候,记录访客信息到数据库,一段时期之后,从数据库中count出记录数,就是访问量;二是没程序,直接用apache(或者iis)日志分析工具分析日志,也能分析出来访问量。 统计的时候是否排除公司内部的访问量,看系统当初是如何设计,没有做这方面的需求,程序员自然不会写相应的代码,自然也就不会排除。 如果想排除,就得找方法,我刚刚提到的那个笨办法,我觉得还凑活,您可以试试看。 2 a) http://demo.a.com 这个网站,没有任何内容,根目录下,只有一个文件 .htaccess 这个文件里边,有若干行代码,可能是类似于RewriteEngine onRewriteCond %{HTTP_HOST} ^http://demo.a.com$RewriteRule ^(.*)$ http://www.a.com/$1 这样的内容; b) 参见ac) 参见a 3 应该是各大网站都会做的事情吧,排除公司内部的访问量不一定是理所应当的。举个例子,网易新闻或者新浪新闻,一个页面可能有几百万甚至上千万的访问量。网易的小编或者新浪的小编,或者网易公司的所有人,都看几遍这个新闻,可能有几千或者上万的访问量,跟上百万的用户访问量相比,基本上可以忽略不计。 4 i) 间隔时间的长短,跟你的动态IP每次更换之后,固定下来,保持的时间,越接近,统计的越准确。相差越多,统计的越不准确。 如果你准备这样做的话,先找到动态IP每次更换后能保存多长时间的平均值。ii) 的确存在这个问题,IP变了,监控程序没及时记录下来,就会出现您提到的问题。 我觉得,您的方案,除了您想到的问题外,还有其他的问题。 a) 一个小系统,包括数据库和客户端,客户端要部署在所有职员的机器上,客户端要开机启动,我个人觉得挺麻烦的,从我自己用电脑的习惯来说,开机启动的程序,越少越好; b) 这个系统,不但要记录IP,还要记录这个公网IP的开始使用时间和结束使用时间; 对比的时候要把网站访问记录中,同日期,同时间段的访问记录中, 来访者IP和同日期,同时间段的你的小系统记录下来的公网IP ,两者一致的记录,排除掉。 如果不记录时间的话, 就会出现这种情况:你获得了一个新的公网IP,你释放出来的公网IP被别人获得了,这个人访问了你的网站,应该是被记录的,如果没记录IP的开始使用时间和结束使用时间,或者这个时间记录的不准确,这里就会出问题。 这样,实际上就增加了这个小系统的复杂性,同时也增加了分析网站统计系统数据时候的复杂性(因为有一个筛选并排查出去的过程)。想起来都头疼,得不偿失。 如果您坚持这样做的话,也不是不可以,有一个服务的名字叫做“花生壳”,一些路由器中支持设置花生壳。因为如果IP发生变化,第一感知的是路由器,在路由器中设置好花生壳的话,这个服务会根据IP的变化,自动进行某些操作(哪怕这些操作仅仅是记录什么时间从某个IP变成了某个IP)。 这样的话,其他的还按照您的想法来。只是“监控的间隔时间”这个问题被完美的解决了。 我个人觉得您说的方法也挺累的。 另外,我想问您一些问题:根据您的评论,我猜测您是提问人。 为什么我在问题本身这些文字周围,看不到提问人是谁,也看不到提问的日期时间? 就是这样设计的吗? 还是我的方法不对? 我应该怎样知道某个问题是谁在什么时间提出的? 谢谢!(我是昨天刚刚注册的,我是新手中的新手) 针对 FaJn 留言的再次补充:一、1、我在回答中提到过“(如果整站所有页面都要统计的话,可能会涉及到cookie的操作)”,也就是说,http://demo.a.com,301到http://www.a.com,http://www.a.com的统计程序,判断如果是从http://demo.a.com过来的,认为是内部职员访问,同时设置cookie(或者session),并且不进入统计。 从http://www.a.com网站首页之外,这个网站的其他页面的统计程序,进行统计之前,先判断是否存在特性的cookie(或者session), 如果有,不统计,如果没有,统计。 2、是指的,根据来源作出判断,根据判断来决定统计或者不统计。 3、程序能跟踪到当前页面的上一个页面是哪里,但对于http://www.a.com的内页来说,只能判断是从http://www.a.com的首页来的,分不清楚访客和内部职员,所以,如 一、1、中提到的,要设计到cookie(或者session)的操作。 4、是很麻烦且基本上不可能的事情。程序基本上只能判断当前页的上一个页面的url地址。不过一般不会有这种需求的。 二、1、如果你的这台电脑在局域网中充当了代理服务器或者路由器的角色,这样做没问题。 三、多谢,我慢慢的在中学习。
■网友


推荐阅读