前言
网站统计工具是帮助站长了解网站并进行改进的重要工具,不过进来统计工具被劫持的事件不断,有些网站因为引入了被劫持后的统计工具而导致广告弹窗等安全事件会让浏览器误判为垃圾网站。而且网站到了一定程度可能也会有一些自定义统计指标的需求,这时候就需要自建统计工具了。
介绍
Piwik 是一套基于 PHP + MySQL 技术构建的开源网站访问统计系统,其前身是 phpMyVisites。Piwik 可以给你详细的统计信息,比如网页浏览人数,访问最多的页面,搜索引擎关键词等等流量分析功能。此外,它还采用了插件扩展及开放 API 架构,可以让用户根据自已的实际需求创建更多的功能。
简单的来说,这货就是开源统计领域的 WordPress,完美的程序丰富的生态。
-
数据实时更新:实时观看到网站的访问流量。
-
可定制仪表盘:根据需要创建窗口小部件,建立新的仪表盘。
-
显示所有网站数据:全局预览监控的所有的网站的信息。
-
电商数据分析:可以根据一定的统计信息,计算大概收益。
-
目标转换跟踪:跟踪以及分析网站中的某些内容是否符合访问者的需求。
-
内容跟踪:跟踪网页中的标题、文本等其他的元素。
-
网站搜索跟踪:跟踪用户访问网站的搜索引擎等信息。
-
自定义变量:跟踪代码中添加自定义的键值对变量,piwik统计这些变量的被访问信息,并将信息可视化。
-
地理定位:piwik可以定位访问者所在的国家、地区、城市,并将这些信息在地图中展现。
-
页面转换信息统计:统计访问者在访问该页面之前以及访问该页面之后动作信息。
-
用户交互跟踪:文件下载、网站内链接点击以及404页面跟踪。
-
电子邮件报告:在你的网站或者是APP中可以嵌入piwik报告,或者是嵌入生成的图片,同时也可以将pdf、HTML格式的报告以邮件的形式发送。
-
注释:生成的图表中添加一定的注释,用于记录重要的事件。
-
无数据限制:没有存储的限制,可以保存所有的数据。
安装
下载程序:
https://builds.piwik.org/piwik.zip
然后解压安装即可,支持 LNMP、LAMP 环境都不需要添加伪静态,而且支持目前最新的 PHP7.2。当然了,最好就是有 HTTPS 加持可以避免干扰和劫持事件。
进去之后记得切换一下语言:
然后就是系统检测了,检测一定要都是绿勾勾,不然统计结果不准确就嗝屁了:
然后就是填写 MySQL 和用户名就不多阐述了。
添加需要被监控统计的网站,如果是电商网站就勾选电商网站,可以有更适合电商的统计方式:
OK,接下来就会出现目标网站添加监控代码了。还支持 移动app 和 SDK 这类没有网站方式的监控。
设置
OK,一般来说小型网站是需要安装好就可以开箱即用了,直接挂代码看报表就行,但是对于大流量的网站或者更多需求的网站就要进一步设置了。
点击右上角的
螺母
按钮进入控制台。
设置邮件服务器
在
系统
-
通用设置
-
邮件服务器设置
中勾选开启,填写好相关 SMTP 信息就可以在邮箱中收到统计推送了。
申请阿里云的免费 SMTP 服务可以参考:使用邮件推送服务设置 WP SMTP 发件
GeoIP
需要获得更精确可靠而且及时的访客地理信息就需要开始 GeoIP 插件并进行设置。
我们在
平台
-
商城
中搜索并安装
GeoIP2
插件即可。
然后再
系统
栏目下就会多出一个
地理位置
的选项。
然后呢,默认的 GeoIP 方式其实不适合大流量网站的,一般来说会用 PHP 的 GeoIP PECL 扩展或者 Nginx 启用 GeoIP 再加载使用。 综合来说 PHP GeoIP PECL 扩展方式最方便兼容也最好。
安装 php-geoip:
apt install php-geoip libgeoip-dev
然后重启一下 PHP ,
service php7.2-fpm restart
,点击启用 PECL 方式驱动 GeoIP 并下载地址库就行了!
Redis
如何通过 Redis 的对象缓存来优化 Piwik 的性能呢? 首先,确保 Piwik 版本大于 2.1.0 ,再安装 phpredis 扩展,然后修改
config/config.ini.php
,加入: