惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

D
Docker
爱范儿
爱范儿
T
The Exploit Database - CXSecurity.com
量子位
T
Tailwind CSS Blog
T
Threatpost
The GitHub Blog
The GitHub Blog
AWS News Blog
AWS News Blog
云风的 BLOG
云风的 BLOG
K
Kaspersky official blog
P
Proofpoint News Feed
博客园 - 司徒正美
L
LangChain Blog
T
Threat Research - Cisco Blogs
C
CERT Recently Published Vulnerability Notes
罗磊的独立博客
酷 壳 – CoolShell
酷 壳 – CoolShell
博客园 - 叶小钗
S
Secure Thoughts
The Last Watchdog
The Last Watchdog
Spread Privacy
Spread Privacy
H
Hacker News: Front Page
T
Troy Hunt's Blog
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
Google DeepMind News
Google DeepMind News
W
WeLiveSecurity
A
Arctic Wolf
Apple Machine Learning Research
Apple Machine Learning Research
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
P
Proofpoint News Feed
T
Tor Project blog
T
The Blog of Author Tim Ferriss
I
Intezer
P
Privacy & Cybersecurity Law Blog
美团技术团队
N
Netflix TechBlog - Medium
博客园_首页
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
V
Vulnerabilities – Threatpost
Application and Cybersecurity Blog
Application and Cybersecurity Blog
G
Google Developers Blog
Attack and Defense Labs
Attack and Defense Labs
T
Tenable Blog
月光博客
月光博客
Stack Overflow Blog
Stack Overflow Blog
J
Java Code Geeks
腾讯CDC
Microsoft Security Blog
Microsoft Security Blog
A
About on SuperTechFans
Last Week in AI
Last Week in AI

兴起百年 - XQBN.com - 工作

拿什么拯救你,我那被百度K掉的网站:一位SEOer的救站血泪笔记 返利行业百度SEO现状深度剖析:机遇与挑战并存 从外链到索引:九块邮SEO危机背后的数据真相与破局之路 《九块邮》网站深度SEO优化分析:从“拔毛”到重生的实战笔记 外贸SEO进阶秘籍:20款英文网站分析工具,让你把竞争对手“看透” 解决PrestaShop“老大难”:三步轻松修改前台特价产品显示数量 外贸电商运维秘籍:21条高频MySQL语句,让你高效管理网站数据库 外贸SEO新战场:手把手教你玩转Google Shopping,抢占免费流量 WordPress博客“搬家”指南:完美更换域名的九步法则与避坑清单
Linux服务器Debian 12 + Nginx + php8.2 + mysql8.4 + 宝塔面板安装Matomo统计系统操作配置教程
作者: 兴起百年 · 2025-11-08 · via 兴起百年 - XQBN.com - 工作

这篇文章距离最后更新已过163 天,如果文章内容或图片资源失效,请留言反馈,我会及时处理,谢谢!

一、服务器硬件、软件、环境配置说明

  • 1、购买了一台香港的vps,香港荃湾-8G CPU 4核 内存 8G SSD 120GB 带宽 1000Mbps 流量 3TB IPv4 1 IPv6 1,每个月99人民币;
  • 2、服务器系统是 Debian 12【主要是长期使用比较稳定】,安装Nginx 1.28 + PHP8.2 + Mysql8.4 + 宝塔面板9.6,服务器上的数据库测试了 Mysql8.0 和 Mysql 8.4都是可以的

二、Matomo安装配置说明

配置好服务器环境之后,在宝塔面板里面建站,配置好SSL证书,然后下载Matomo最新的安装包

  • 1、Matomo安装包下载链接
https://builds.matomo.org/matomo.zip
  • 2、具体安装步骤

开始点击安装了!点击下一步 »

Linux服务器Debian 12 + Nginx + php8.2 + mysql8.4 + 宝塔面板安装Matomo统计系统操作配置教程

系统检查

Matomo 会检查你的服务器是否符合Matomo 的要求。如果一切正常,你会看到一个长列表,如下所示:

Linux服务器Debian 12 + Nginx + php8.2 + mysql8.4 + 宝塔面板安装Matomo统计系统操作配置教程

如果出现问题,Matomo 会识别它并告诉您如何解决,如下例所示:

Linux服务器Debian 12 + Nginx + php8.2 + mysql8.4 + 宝塔面板安装Matomo统计系统操作配置教程

当所有要求都满足时,单击“下一步”»

MySQL数据库设置

您应该已经设置了 MySQL 数据库。如果您没有数据库信息,可能需要咨询您的网站托管服务商或技术人员。

Linux服务器Debian 12 + Nginx + php8.2 + mysql8.4 + 宝塔面板安装Matomo统计系统操作配置教程

安全提示:为了增强安全性,我们建议您将 Matomo 安装在其自带的 MySQL 数据库中,并为只有该数据库访问权限的用户指定用户名和密码。点击此处查看有关如何创建新数据库和 MySQL 用户的详细说明。

(请注意,默认情况下,连接数据库时使用端口 3306。如果您的服务器使用其他端口,您可以在主机名后输入,例如localhost:3307

填写完表格后,点击“下一步”»

Matomo 将把必要的表添加到您的数据库中:

Linux服务器Debian 12 + Nginx + php8.2 + mysql8.4 + 宝塔面板安装Matomo统计系统操作配置教程

单击“下一步”

超级用户

超级用户是您在安装 Matomo 时创建的用户。此用户拥有最高权限。选择您的用户名和密码:

Linux服务器Debian 12 + Nginx + php8.2 + mysql8.4 + 宝塔面板安装Matomo统计系统操作配置教程

请勿丢失此信息;这是您首次登录 Matomo 的唯一方式。每个 Matomo 安装中只有一个超级用户。超级用户可以执行管理任务,例如添加要监控的新网站、添加用户、更改用户权限以及启用和禁用插件。

默认情况下,超级用户将注册接收升级和安全警报以及社区更新。如果您不想接收这些电子邮件,请取消选中这些复选框。

填写信息并点击下一步»

建立您的第一个网站

输入您要跟踪的第一个网站的名称和网址。安装完成后,您可以添加更多网站。

Linux服务器Debian 12 + Nginx + php8.2 + mysql8.4 + 宝塔面板安装Matomo统计系统操作配置教程

单击“下一步”

安装 JavaScript 跟踪标签

在您想要分析的每个页面上安装 Matomo 生成的 JavaScript 跟踪标签。我们建议将此代码放置在结束</head>标签之前,或放置在所有页面顶部的共享头文件中。

Linux服务器Debian 12 + Nginx + php8.2 + mysql8.4 + 宝塔面板安装Matomo统计系统操作配置教程

针对最流行的 CMS 提供分步指南,例如:WordPress、Joomla、Webflow、Shopify store、SquareSpace、Wix、GoDaddy Website Builder、Drupal、Jimdo。Matomo还可以集成到Android 和 iOS 应用程序、 GTM(Google Tag Manager)、Ionic 移动应用程序等中。

否则,您将需要手动插入跟踪标签。

  • 3、网站配置文件修改
server
{
    listen 80;
    listen 443 ssl;
    listen 443 quic;
    listen [::]:443 ssl;
    listen [::]:443 quic;
    http2 on;
    listen [::]:80;
    server_name analytics.xqbn.com;
    index index.php index.html index.htm default.php default.htm default.html;
    root /www/wwwroot/analytics.xqbn.com;
    #CERT-APPLY-CHECK--START
    # 用于SSL证书申请时的文件验证相关配置 -- 请勿删除
    include /www/server/panel/vhost/nginx/well-known/analytics.xqbn.com.conf;
    #CERT-APPLY-CHECK--END

    #SSL-START SSL相关配置,请勿删除或修改下一行带注释的404规则
    #error_page 404/404.html;
    ssl_certificate    /www/server/panel/vhost/cert/analytics.xqbn.com/fullchain.pem;
    ssl_certificate_key    /www/server/panel/vhost/cert/analytics.xqbn.com/privkey.pem;
    ssl_protocols TLSv1.1 TLSv1.2 TLSv1.3;
    ssl_ciphers EECDH+CHACHA20:EECDH+CHACHA20-draft:EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES256:EECDH+3DES:RSA+3DES:!MD5;
    ssl_prefer_server_ciphers on;
    ssl_session_tickets on;
    ssl_session_cache shared:SSL:10m;
    ssl_session_timeout 10m;
    add_header Strict-Transport-Security "max-age=31536000";
    add_header Alt-Svc 'quic=":443"; h3=":443"; h3-29=":443"; h3-27=":443";h3-25=":443"; h3-T050=":443"; h3-Q050=":443";h3-Q049=":443";h3-Q048=":443"; h3-Q046=":443"; h3-Q043=":443"';
    error_page 497  https://$host$request_uri;

    #SSL-END


    add_header Referrer-Policy origin always; # make sure outgoing links don't show the URL to the Matomo instance
    add_header X-Content-Type-Options "nosniff" always;
    add_header X-XSS-Protection "1; mode=block" always;

    ## only allow accessing the following php files
location ~ ^/(index|matomo|piwik|js/index|plugins/HeatmapSessionRecording/configs)\.php$ {
    include fastcgi_params;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    fastcgi_param HTTP_PROXY "";  # 防止 httpoxy 攻击
    try_files $fastcgi_script_name =404;  # 防止 CVE-2019-11043

    fastcgi_pass unix:/tmp/php-cgi-82.sock;  # ✅ 适配 aaPanel 默认的 PHP 8.2 socket 路径
    fastcgi_index index.php;
}


    ## deny access to all other .php files
    location ~* ^.+\.php$ {
        deny all;
        return 403;
    }

    ## serve all other files normally
    location / {
        try_files $uri $uri/ =404;
    }

    ## disable all access to the following directories
    location ~ ^/(config|tmp|core|lang) {
        deny all;
        return 403; # replace with 404 to not show these directories exist
    }

    location ~ /\.ht {
        deny  all;
        return 403;
    }

    location ~ js/container_.*_preview\.js$ {
        expires off;
        add_header Cache-Control 'private, no-cache, no-store';
    }

    location ~ \.(gif|ico|jpg|png|svg|js|css|htm|html|mp3|mp4|wav|ogg|avi|ttf|eot|woff|woff2)$ {
        allow all;
        ## Cache images,CSS,JS and webfonts for an hour
        ## Increasing the duration may improve the load-time, but may cause old files to show after an Matomo upgrade
        expires 1h;
        add_header Pragma public;
        add_header Cache-Control "public";
    }

    location ~ ^/(libs|vendor|plugins|misc|node_modules) {
        deny all;
        return 403;
    }

    ## properly display textfiles in root directory
    location ~/(.*\.md|LEGALNOTICE|LICENSE) {
        default_type text/plain;
    }
    
    #ERROR-PAGE-START  错误页配置,可以注释、删除或修改
    error_page 404 /404.html;
    #error_page 502 /502.html;
    #ERROR-PAGE-END

    #PHP-INFO-START  PHP引用配置,可以注释或修改
    include enable-php-82.conf;
    #PHP-INFO-END

    #REWRITE-START URL重写规则引用,修改后将导致面板设置的伪静态规则失效
    include /www/server/panel/vhost/rewrite/analytics.xqbn.com.conf;
    #REWRITE-END

    #禁止访问的文件或目录
    location ~ ^/(\.user.ini|\.htaccess|\.git|\.env|\.svn|\.project|LICENSE|README.md)
    {
        return 404;
    }

    #一键申请SSL证书验证目录相关设置
    location ~ \.well-known{
        allow all;
    }

    #禁止在证书验证目录放入敏感文件
    if ( $uri ~ "^/\.well-known/.*\.(php|jsp|py|js|css|lua|ts|go|zip|tar\.gz|rar|7z|sql|bak)$" ) {
        return 403;
    }

    location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
    {
        expires      30d;
        error_log /dev/null;
        access_log /dev/null;
    }

    location ~ .*\.(js|css)?$
    {
        expires      12h;
        error_log /dev/null;
        access_log /dev/null;
    }
    access_log  /www/wwwlogs/analytics.xqbn.com.log;
    error_log  /www/wwwlogs/analytics.xqbn.com.error.log;
}

主要是结合Matomo官网的nginx配置说明,结合宝塔面板网站的配置文件格式,综合编辑的配置文件;

主要是增加了第35行到95行的代码;

  • 4、Matomo配置文件中需要调整的参数

文件位置

/config/config.ini.php

增加的内容如下:

force_ssl = 1
browser_archiving_disabled_enforce = 1

image-20250701121657439

  • 5、Matomo网站后台的设置说明

    • 5.1、 管理 - 个人 - 设置 设置了查看所有网站的报告列表、以及查看今天的数据;

    image-20250701121852023

    • 5.2、管理 - 系统 - 通用设置

    image-20250701122025710

    image-20250701122123204

    管理 - 系统 - 地理位置 最新版本的这项功能改进了很多,基本上安装好之后就可以自动配置好;

    image-20250701122225601

    管理 - 平台 - 商城 在这个里面可以安装自己喜欢的Matomo主题;

    image-20250701122418882

    • 5.3、管理 - 网站 - 设置 里面可以设置matomo统计需要排除的ip,一般是去掉自己办公网络的ip;设置网站记录的国家和时区,方便计算数据;

    image-20260101203704725

    image-20260101203754121

  • 6、设置Matomo定时任务

定时任务的指令:

sudo -u www /www/server/php/82/bin/php /www/wwwroot/analytics.xqbn.com/console core:archive --url=https://analytics.xqbn.com/  > /www/wwwroot/analytics.xqbn.com/tmp/logs/matomo.log

Matomo定时任务

定时任务的配置按照上图的设计来配置,此为每10分钟做一次数据汇总;