lala.im:高性能的开源站点统计系统:Centcount Analytics

運維技術·lala.im · 2018-03-25 · 113 人浏览

原文地址:https://lala.im/3103.html,請支持原作者!該處僅作轉載。

在站点统计这块,国内目前呈现三足鼎立的情况:CNZZ、51LA、百度统计各占一席之地。我个人常年使用51LA,但是由于最近51LA的改版,我决定放弃使用,原因不想多说,所以现在我决定自建一个统计系统,用来分析我的博客流量。那么我用到的系统就是今天要给大家介绍的:Centcount Analytics(百夫长统计)
Centcount Analytics是一款开源免费的站点分析软件,最大的特点也就是作者一直在强调的:高性能。现在我已经把Centcount Analytics用在我的博客上了,目前使用良好~
Centcount Analytics采用的架构是PHP+MySQL+Redis,所以我们想要正常安装它,需要的环境如下:
1、LNMP+Redis
2、域名+SSL(Centcount Analytics强制使用SSL,没有SSL无法安装)
3、Postfix(发送邮件)
感觉这个环境不好装?没事!现在LALA教大家用最简单的方法来安装Centcount Analytics。
安装宝塔WEB面板:

yum install -y wget && wget -O install.sh http://download.bt.cn/install/install.sh && sh install.sh

宝塔面板安装完成后,安装一个LNMP环境,PHP版本一定要选择7.0,MySQL要选择5.5,其他的随意。
LNMP环境安装完成后,首先我们点击“软件管理”打开MySQL的设置界面,点击配置修改,在[client]的末尾加入一行:

default-character-set = utf8

如图所示:

範例
接着在[mysqld]的末尾加入三行:

character-set-server = utf8
collation-server = utf8_general_ci
sql-mode = "NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"

如图所示:

範例
确认都修改好了后,重启MySQL:

範例
接着我们打开PHP7.0的设置界面,点击禁用函数,删除popen这个函数,如图所示:

範例
然后再点击安装扩展,安装redis扩展,如图所示:

範例
这个扩展安装完成后,请在宝塔的软件管理的第二页找到如图所示的软件,默认宝塔是自动帮你安装好了的,但如果没有安装的话,就要自己手动安装一下:

範例
OK,至此,LNMP+Redis的环境就搭建好了。
下面我们来新建一个站点:

範例
在站点新建好了后,我们还需要给站点域名申请一个SSL证书。这里申请证书的过程我就不写了,可以参考一下这篇文章:
AlwaysOnSSL:免费6个月的SSL证书

请注意,别偷懒,务必给你的域名申请好一个SSL证书,不然待会Centcount Analytics是无法安装的。
假设现在你已经把域名的SSL证书申请好了,此时我们点击站点设置,找到SSL,选择其他证书,然后输入你的私钥和证书数据,最后点击保存即可完成SSL的配置:

範例
至此,Centcount Analytics所需要的环境就全部搭建完成了,有人可能会问,文章开头不是写了还需要一个Postfix吗?Centcount Analytics是肯定需要这个的,但Postfix已经被宝塔自动安装好了,我们无需再手动安装。是不是觉得宝塔很神奇?2333~
此时我们回到终端内,进入到站点根目录内:

cd /www/wwwroot/analysis.0o0.lol

拉取Centcount Analytics项目文件:

git clone https://github.com/WMJonssen/Centcount-Analytics.git tmp && mv tmp/.git . && rm -rf tmp && git reset --hard

进入到ipdb目录内:

cd ipdb

解压IP数据库:

yum -y install epel-release
yum -y install p7zip
7za x ipdb.zip

回到宝塔面板内,进入到config目录,编辑config_common.php文件,修改如下图红框标注的内容:

範例
现在打开你的站点域名+/install.php应该就能看到安装界面了:

範例
接着Centcount Analytics会检查我们的环境是否配置正确,如果你是按照我这篇文章一步步走过来的,是绝对没有任何问题的:

範例
接着下一步,填写相应的信息,如图所示:

範例
不出意外的话,看到如图回显就是安装成功了:

範例
登录我们的邮箱,应该可以找到一封验证账号的邮件,点击链接激活我们的账号:

範例
完成激活:

範例
访问你的站点域名+/login.php即可登录你的账号:

範例
登录进去后,就可以添加需要统计的站点信息了:

範例
添加完成后,我们就可以获取站点的统计代码:

範例
下面就到了展示数据的时候了,也是展现Centcount Analytics强大功能的时候了~
首先是网站的基本概况:

範例
漂亮的统计图表:

範例
实时数据:

範例
OK,首页的展示我们就先到这里,首页展示这些都只是基础数据。比如我们要看一个数据的详细信息,可以在左侧菜单栏选择,比如我这里要看一下实时访客的详细数据:

範例
再比如让我们来看一下关于搜索引擎相关的数据:

範例
关键字:

範例
来源分析:

範例
还有太多太多的功能,这里就不一一列举了,如何体现出Centcount Analytics的高大上?让我们来看看Centcount Analytics的统计图表。
实时访客的动态数据图:

範例
访客分布地图:

範例
写在最后:
一些注意事项~
1、在你确定Centcount Analytics运行正常后,请务必删除掉install.php文件,我发现这个安装文件在安装完成后并不会自动删除,可能会造成一些安全隐患,所以切记要删除掉。
2、目前Centcount Analytics开源版本仅支持添加一个站点统计,如果需要添加多站点则要购买收费版本。
3、在搭建Centcount Analytics的时候也遇到一些小坑,比如解压IP数据压缩包的时候,由于那个压缩包被分卷了很多个,实在是不好解压,最后安装了一个7zip没想到就能直接解压成功~
4、建议单独拿一台VPS跑Centcount Analytics,因为我们为了配置Centcount Analytics改动了MySQL的很多配置,这样改动后可能再去安装其他程序的时候MySQL环境就不兼容了。
5、第一次装这个,还帮作者提交了一个小BUG,验证码不识别大写的问题,作者秒修复,点个赞~

運維技術 lala.im
Theme Jasmine by Kent Liao