最近在做数据仓库的技术方案设计。
?
首先需要的是收集网站日常的访问日志,主要可以用来确定用户访问的PV,UV等,甚至跟踪用户的访问轨迹等等。
?
查看了很多资料,主要介绍了两种方案:
?
1,基于客户端: 在每个页面 写上 统计代码JS ,JS把统计的参数请求给 日志服务器 (类似 google analysis ,百度统计)
?
2,基于服务端: 通过每台服务器日志进行收集和分析
?
关于这两种方案的优略,可以参考这篇文章:
http://javascript-reference.info/web-analytics-with-javascript-page-tagging-and-server-log-files-comparison-of-2-analytical-methods.htm
?
?
在我目前的需求来看,我打算采取前者 基于客户端的方案。我遇到的问题是,如何把全站的网页都加上我们自己的统计JS代码。
?
显然一个个页面加的话,保准人肉工作太多,难免出错。我打算从服务器端入手,让服务器动态的帮我加入统计JS
?
我们网站有三种服务器:
1,apache 作反向代理,请求 jetty 返回响应数据
?
2,nginx 处理静态资源
?
3,iis 部分老的网站是用 .net做的
?
经过网上的一番搜罗,查到了方案:
?
nginx:
http://wiki.nginx.org/NginxHttpSubModule
apache:
http://httpd.apache.org/docs/2.0/mod/mod_ext_filter.html
http://wiki.nginx.org/NginxHttpSubModule
apache:
http://httpd.apache.org/docs/2.0/mod/mod_ext_filter.html
iis:
http://learn.iis.net/page.aspx/658/using-outbound-rules-to-add-web-analytics-tracking-code/?
http://learn.iis.net/page.aspx/658/using-outbound-rules-to-add-web-analytics-tracking-code/?
那剩下的就还要解决服务器端的日志解析问题就可以了。