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。

- 后续步骤同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
