原创

开源访问统计分析工具matomo安装配置说明

之前一直使用的百度统计平台来对博客的流量进行统计分析,但是随着谷歌浏览器禁用第三方cookie,导致百度统计的代码总是会在浏览器中报错,所以就想着换一个工具来使用。然后在网络上找到了matomo这款开源的网站数据统计分析工具。matomo这款工具可以免费使用,可以搭建在自己的服务器上,使数据完全私有化,对用户隐私能较好的保护,而且matomo对标的产品是谷歌的Google Analytics,所以相对应的功能还是比较完善的,作为博客访问数据分析工具完全够用。所以我们选择了部署matomo,这里记录一下部署的过程,供各位参考。

一、安装matomo

1.软件下载

github地址:https://github.com/matomo-org/matomo

官网下载地址:https://matomo.org/faq/on-premise/installing-matomo/

2.通过docker安装matomo

matomo需要安装php环境,如果有环境的话可以直接从上面链接下载软件安装。因为这边暂时没有现成的环境,所以我们选择通过docker来安装,这样操作比较简单,而且可以减少服务器安全风险。

直接运行镜像,把html目录挂载出来,docker会自动去拉取镜像:

 docker run --restart=always --name matomo -p 8080:80 -v /data/matomo:/var/www/html matomo

额,报错了,可能是启动docker之后我们调整过iptables,重启一下docker进程:

systemctl restart docker

重启之后直接启动matomo容器,因为之前已经拉取完了:

#查看所有容器(包括已停止的容器)
docker ps -a
#启动容器
docker start matomo
#查看正在运行的容器状态
docker ps

这样matomo就通过docker启动起来了。

二、配置nginx代理

因为我们把matomo容器的80端口映射到了宿主机的8080端口,所有我们现在需要把宿主机的web端口转发到这里,nginx配置如下:

#反向代理
    upstream matomo{
        server 127.0.0.1:8080;
    }
#将80端口http跳转到https协议
    server{
        listen 80;
        server_name matomo.eyyyye.com;
        return 301 https://$host$request_uri;
    }
#https端口配置
    server {
        listen       443 ssl;
        listen       [::]:443 ssl;
        http2 on;
        server_name matomo.eyyyye.com;
        location /{
           proxy_pass http://matomo;
           proxy_set_header User-Agent $http_user_agent;
           proxy_set_header X-Real-IP $remote_addr;
           proxy_set_header Host $host:$server_port;
           proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
           proxy_http_version 1.1;
           proxy_set_header Upgrade $http_upgrade;
           proxy_set_header Connection "upgrade";
           proxy_set_header X-Forwarded-Proto https;
        }
    }

三、初始化matomo

前面都配置完成后,我们把域名解析到服务器,就可以通过域名访问matomo进行系统初始化操作了。

1.访问matomo服务

初次访问域名后就进入了欢迎页面,我们直接按照提示操作,点击下一步:

进行系统检查,这块直接下一步就行,docker安装的依赖都自动拉齐了,如果在本地环境搭建,可以根据提示进行相应调整:

2.配置数据库信息

系统检查完成后,下一步配置数据库,matomo使用的是mysql数据库,安装可以参考:linux系统通过rpm包安装mysql8,这里需要注意一下,因为我们mysql数据库是在宿主机上,所以这块服务器ip需要填写宿主机的ip,填写完成后直接下一步:

建立数据表,这块不用我们配置,系统会自动建立,直接点击下一步:

3.配置超级用户

这一步需要创建一个matomo账号密码信息,之后登录matomo都是使用这个账号,另外邮箱地址要填写,如果忘记密码需要重置的时候需要邮箱验证:

之后的步骤,根据提示填写信息后直接下一步就行,网站和跟踪代码可以在初始化完成后登录matomo系统配置获取。

到这里就初始化完成了。

四、配置matomo跟踪代码到博客

1.登录matomo

初始化matomo之后,直接访问域名就可以登录:

2.获取跟踪代码

登录matomo后点击页面右侧”管理“按钮进入系统设置页面,然后”网站“>”追踪代码“菜单:

下划页面,选择需要跟踪的网站:

系统会在下方自动生成javaScript跟踪代码,还可以点击“显示高级设置”,来调整跟踪代码:

继续下划还有使用img标签、日志分析等多种方式获取网站访问数据,可以根据实际情况进行选择:


3.在博客中添加跟踪代码

一般博客都有自定义js的配置,我们选择通过JavaScript跟踪代码,直接将代码粘贴到这里,有些不需要<script>标签,自行删除就可以:

另外我们的统计代码比默认提供的增加了站内搜索的代码,其中searchForm站内搜索动作的html标签id,keywords是站内搜索内容的html标签id:

    document.getElementById('searchForm').onsubmit = function() {  
    	var query = document.getElementById('keywords').value; 
      _paq.push(['trackSiteSearch', query, false,false]);   
    };  

配置完成后,matomo就可以接收到网站的访问数据了。

五、matomo其他配置

1.配置邮件服务

matomo重置密码和发送报表的功能需要配置邮件服务器,配置路径在“系统”>“通用设置”>"邮件服务器设置“中:

这里我们使用的是阿里云企业邮箱免费版,可以通过下面链接购买:https://common-buy.aliyun.com/?commodityCode=alimail&specCode=lx_18482#/buy

2.报表邮件配置

配置完邮件服务器后,matomo可以定时发送网站访问报表,报表邮件页面在”个人“>"报表邮件”下,可以选择邮件日报的时间和周期等项目:

继续下拉可以选择需要发送的报表指标:

3.隐藏访客的ip地址

我们可以选择隐藏ip地址的后两位:

4.报表面板操作配置

点击”所有网站“,可以看到全部跟踪的站点信息:

点击想要查看报表的网站名称,进入网站报表面板:

点击上方报表面板小选项,可以添加删除需要展示的报表:

面板中的报表可以拖拽调整位置:

5.常用报表分析页面

访客概览

访问日志

访问时间

页面标题

转场

性能

获客分析

搜索引擎

可以看到matomo提供的分析数据有很多,这里就不一一展示了,更多的分析详情数据可以部署一个慢慢研究。


扩展说明:

1.matomo官网:https://matomo.org/

2.部署配置参考:https://matomo.org/faq/on-premise/installing-matomo/

3.因为我们把源码挂载到/data/matomo下了,升级的时候直接在官网下载后unzip -o matomo.zip覆盖解压就行。

正文到此结束
温馨提示:
本文最后更新于 2024年06月10日,已超过 2 天没有更新。若文章内的图片失效(无法正常加载),请留言反馈或直接联系我
本文目录