1. 首页 > 其他技术

Matomo网站统计工具教程:免费开源替代百度统计/Google Analytics

随着各大第三方网站统计平台纷纷倒闭或转向收费,同时谷歌浏览器逐步禁用第三方Cookie,使用百度统计等工具的站长们频繁遇到报错和追踪失效的问题。数据私有化、自主可控的统计方案已成为刚需。Matomo(前身Piwik) 作为免费开源、功能强大的网站分析工具,堪称“自建版Google Analytics”,支持PHP空间、Docker、WordPress插件等多种部署方式,让你轻松掌握网站流量数据,保护用户隐私。

本文将整合两篇实战教程,手把手教你通过PHP空间和Docker两种方式安装Matomo,配置Nginx反向代理,并详解核心统计功能,助你搭建稳定、安全的私有统计系统。

一、为什么选择Matomo?

  • 开源免费:完全开源,可随意安装在自己的服务器上,无数据泄露风险。
  • 功能强大:提供实时访客、搜索引擎关键词、页面标题、国家/省市、操作系统、浏览器、屏幕分辨率、热图、滚动图、点击图等丰富分析维度。
  • 部署灵活:支持PHP环境、Docker容器,也可直接作为WordPress插件集成。
  • 隐私合规:可隐藏访客IP,符合GDPR等隐私法规要求。
  • 自建可控:数据完全私有,不受第三方平台政策变动影响。

二、环境准备与要求

2.1 推荐环境

  • Web服务器:Apache、Nginx、IIS、LiteSpeed等(推荐Apache,Nginx需手动配置重写规则)
  • PHP版本:Matomo 4.x 需 PHP 7.2.5+,建议使用 PHP 8.x(性能更优)
  • 数据库:MySQL 5.5+ 或 MariaDB(推荐 MySQL 8+ / MariaDB)
  • 服务器配置参考(官方建议):
  • 月PV < 10万:2核CPU,2GB内存,50GB SSD
  • 月PV < 100万:4核CPU,8GB内存,250GB SSD
  • 月PV < 1000万:至少2台应用服务器(4核4GB)+ 1台数据库服务器(8核16GB)

2.2 下载地址

  • 官网:https://matomo.org
  • GitHub项目:https://github.com/matomo-org/matomo
  • 官方演示:https://demo.matomo.cloud/

三、方式一:在PHP空间安装Matomo

适合已有PHP+MySQL虚拟主机或VPS的用户。

3.1 上传程序包

从官网下载最新版Matomo压缩包,解压后上传至网站根目录(如 /home/wwwroot/yourdomain)。

3.2 环境检测

访问你的域名(如 http://yourdomain.com),Matomo会自动检测环境。若提示某些函数被禁用(如 shell_exec),需在 php.ini 中删除禁用列表,或通过宝塔面板/Oneinstack等工具开启。

环境检测

禁用函数开启

宝塔用户可直接在“PHP管理”中删除禁用函数;Oneinstack等可编辑 php.ini 找到 disable_functions 删除对应项。

3.3 数据库配置

填写已创建的MySQL数据库信息。若 127.0.0.1 连接失败,可尝试改为 localhost

数据库配置

3.4 创建管理员账号

设置超级管理员的用户名、密码和邮箱,用于后续登录管理。

管理员创建

3.5 添加首个网站并获取追踪代码

安装完成后,添加你要统计的网站,Matomo会生成一段JavaScript追踪代码。将该代码复制到网站每个页面的 前即可。

添加网站

追踪代码

四、方式二:使用Docker安装Matomo(推荐)

Docker方式隔离性好,适合与服务器上其他网站共存,且配置简单。

4.1 安装Docker和Docker Compose

确保系统已安装Docker和Compose(可参考一键安装脚本)。

4.2 创建项目目录及配置文件

cd ~
mkdir matomo && cd matomo

创建 docker-compose.yml 文件:

version: "3"
services:
  db:
    image: mariadb
    command: --max-allowed-packet=64MB
    restart: always
    environment:
      - MARIADB_DATABASE=matomo
      - MARIADB_USER
      - MARIADB_PASSWORD
      - MARIADB_ROOT_PASSWORD
    volumes:
      - ./db:/var/lib/mysql
  app:
    image: matomo
    restart: always
    volumes:
      - ./matomo:/var/www/html
    ports:
      - 127.0.0.1:8080:80

创建 .env 文件(设置数据库密码):

MARIADB_USER=matomo
MARIADB_PASSWORD=你的密码
MARIADB_ROOT_PASSWORD=你的密码

目录结构如下:

目录文件

4.3 启动容器

cd /root/matomo
sudo docker-compose up -d

容器启动后,Matomo运行在宿主机的 8080 端口。

启动成功

4.4 配置Nginx反向代理(实现域名访问)

若你已安装Nginx(如Oneinstack、LNMP、宝塔),配置域名代理到 localhost:8080

在Nginx站点配置文件中添加以下location:

location / {
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-Host $host;
    proxy_set_header X-Forwarded-Proto https;
    proxy_pass http://localhost:8080;
}

完整SSL配置示例(含80跳转443):

upstream matomo {
    server 127.0.0.1:8080;
}
server {
    listen 80;
    server_name matomo.yourdomain.com;
    return 301 https://$host$request_uri;
}
server {
    listen 443 ssl http2;
    server_name matomo.yourdomain.com;
    ssl_certificate /path/to/fullchain.cer;
    ssl_certificate_key /path/to/your.key;
    # 其他SSL参数...
    location / {
        proxy_pass http://matomo;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header Host $host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto https;
    }
}

修改后检测配置并重启Nginx:

sudo nginx -t
service nginx restart   # 或 lnmp nginx restart

4.5 通过域名访问并初始化

打开 https://matomo.yourdomain.com,进入安装界面。

  • 数据库配置:数据库服务器地址填写 db(因为容器内服务名为db),用户名和密码为 .env 中设置的值,数据库名 matomo

Docker数据库配置

  • 后续步骤同PHP空间安装,创建超级用户、添加网站。

4.6 解决“信任主机”警告

安装后若出现 trusted_hosts 警告,编辑配置文件 matomo/config/config.ini.php,在 [General] 下添加:

trusted_hosts[] = "localhost:8080"
assume_secure_protocol = 1
force_ssl = 1

保存后刷新即可正常登录。

修改配置

五、WordPress插件安装(极简方式)

若你使用WordPress,可直接安装 Matomo Analytics 插件(下载地址),启用后按向导配置,无需单独部署,统计代码自动集成。

六、Matomo核心统计功能介绍

Matomo仪表盘涵盖访客分析、行为、获客、转化与收益等模块。

主界面

6.1 实时访客

查看当前在线人数、访问来源、地理位置、设备信息等。

实时访客

6.2 地理位置(省市级别)

支持国内精确到省市,方便分析地域流量。

省市统计

6.3 行为统计

页面浏览量、入口/出口页面、事件追踪、忠诚度、访问时长等。

行为瀑布图

6.4 获客分析(来源)

搜索引擎、社交媒体、外部链接、关键词等详细数据。

来源分析

6.5 电子商务统计

支持WooCommerce等电商插件,追踪转化率和收益。

电商统计

七、高级配置建议

7.1 配置邮件服务

用于密码重置和定期报表发送。在“系统”>“通用设置”>“邮件服务器设置”中填写SMTP信息(如阿里云企业邮箱)。

7.2 定时邮件报表

在“个人”>“报表邮件”中设置日报/周报,选择要包含的指标,自动发送到指定邮箱。

7.3 隐藏访客IP

在管理后台选择“隐私”>“用户隐私”,可设置IP匿名化(如隐藏后两段),保护访客隐私。

7.4 自定义追踪(站内搜索)

若想追踪站内搜索,可在追踪代码中添加:

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

替换对应的表单ID即可。

八、性能优化与扩展

  • 高流量站点:建议使用多服务器负载均衡,数据库与Web分离,启用Redis/Memcached缓存。
  • CDN加速:可将Matomo静态资源托管至CDN,减轻服务器压力。
  • 定期归档:配置计划任务运行 php console core:archive 加速报表生成。

九、总结

Matomo作为开源免费的网站统计解决方案,不仅功能完善、部署灵活,而且数据完全自主可控,完美替代百度统计等第三方工具。无论是通过传统PHP空间、Docker容器,还是WordPress插件,你都能快速搭建属于自己的分析平台。立即动手,为你的网站加上一个强大、安全、私密的统计引擎吧!

相关资源

  • Matomo官网:https://matomo.org
  • Docker镜像:https://github.com/matomo-org/docker
  • 官方文档:https://matomo.org/faq/on-premise/installing-matomo/

本文由主机测评网发布,不代表主机测评网立场,转载联系作者并注明出处:https://zhuji.jb51.net/qtcms/9634.html

联系我们

在线咨询:点击这里给我发消息

Q Q:2220678578