Webanalyse · 6 min read · Dec 17, 2025

Wie man Matomo Webanalyse auf Debian 9 installiert

Matomo (ehemals Piwik) ist eine kostenlose und Open-Source-Webanalyseanwendung, die von einem Team internationaler Entwickler entwickelt wurde und auf einem PHP/MySQL-Webserver läuft. Es verfolgt Online-Besuche auf einer oder mehreren Websites und zeigt Berichte über diese Besuche zur Analyse an. Man kann es als Alternative zu Google Analytics betrachten. Matomo ist Open Source und sein Code ist öffentlich auf Github verfügbar. Einige der Funktionen sind: A/B-Tests, Heatmaps, Trichter, Tracking- und Reporting-API, Google AdWords, Facebook-Anzeigen, Bing-Anzeigen, Kosten pro Klick (CPC) usw. Dieses Tutorial zeigt Ihnen, wie Sie Matomo auf einem Debian 9 (stretch)-System mit Nginx als Webserver installieren und die Website mit einem Let’s Encrypt SSL-Zertifikat sichern.

Anforderungen

Um Matomo (Piwik) auf Ihrem Debian-System auszuführen, benötigen Sie einige Dinge:

  • Webserver wie Apache oder Nginx.
  • PHP-Version 5.5.9 oder höher mit pdo und pdo_mysql oder mysqli, gd, xml, curl und mbstring Erweiterungen. PHP 7+ wird empfohlen.
  • MySQL-Version 5.5 oder höher oder die entsprechende MariaDB-Version. MySQL 5.7+ wird empfohlen.

Voraussetzungen

  • Ein Betriebssystem, das Debian 9 (stretch) ausführt.
  • Ein Nicht-Root-Benutzer mit Sudo-Rechten.

Erste Schritte

Überprüfen Sie Ihre Debian-Version:

lsb_release -ds  
# Debian GNU/Linux 9.6 (stretch)

Richten Sie die Zeitzone ein:

dpkg-reconfigure tzdata

Aktualisieren Sie die Pakete Ihres Betriebssystems (Software). Dies ist ein wichtiger erster Schritt, da er sicherstellt, dass Sie die neuesten Updates und Sicherheitsfixes für die Standardsoftwarepakete Ihres Betriebssystems haben:

apt update && apt upgrade -y

Installieren Sie einige wesentliche Pakete, die für die grundlegende Verwaltung des Debian-Betriebssystems erforderlich sind:

apt install -y curl wget vim git unzip socat sudo

Schritt 1 - Installieren Sie MySQL und erstellen Sie eine Datenbank für Matomo

Matomo unterstützt MySQL- und MariaDB-Datenbanken. Das Debian-Team hat MySQL ab Debian 9 (stretch) durch MariaDB als Standarddatenbank ersetzt, daher verwenden wir in diesem Tutorial MariaDB als Datenbankserver. Wenn Sie das originale MySQL installieren möchten, können Sie das offizielle MySQL-Repository von Oracle hinzufügen und verwenden.

Installieren Sie den MariaDB-Datenbankserver:

sudo apt install -y mariadb-server

Überprüfen Sie die MariaDB-Version:

mysql --version  
# mysql  Ver 14.14 Distrib 5.7.24, for Linux (x86_64) using  EditLine wrapper

Führen Sie das Skript mysql_secure_installation aus, um die Sicherheit von MariaDB zu verbessern und das Passwort für den MariaDB root-Benutzer festzulegen:

sudo mysql_secure_installation

Beantworten Sie jede der Fragen:

``Geben Sie das aktuelle Passwort für root ein (leer für keines): Drücken Sie Enter  
Soll das root-Passwort gesetzt werden? [Y/n] y  
Neues Passwort: your_secure_password  
Neues Passwort erneut eingeben: your_secure_password  
Anonyme Benutzer entfernen? [Y/n] Y  
Root-Login aus der Ferne verbieten? [Y/n] Y  
Testdatenbank und Zugriff darauf entfernen? [Y/n] Y  
Privilegientabellen jetzt neu laden? [Y/n] Y``

Verbinden Sie sich mit der MariaDB-Shell als Root-Benutzer:

sudo mysql -u root -p  
# Passwort eingeben  

Erstellen Sie eine leere MariaDB-Datenbank und einen Benutzer für Matomo und merken Sie sich die Anmeldeinformationen:

mysql> CREATE DATABASE dbname;  
mysql> GRANT ALL ON dbname.* TO 'username' IDENTIFIED BY 'password';  
mysql> FLUSH PRIVILEGES;

Verlassen Sie MariaDB:

mysql> exit

Ersetzen Sie dbname, username und password durch Ihre eigenen Namen.

Schritt 2 - Installieren Sie PHP und notwendige PHP-Erweiterungen

Installieren Sie PHP sowie die notwendigen PHP-Erweiterungen:

sudo apt install -y php7.0 php7.0-cli php7.0-fpm php7.0-common php7.0-curl php7.0-gd php7.0-xml php7.0-mbstring php7.0-mysql

Überprüfen Sie die PHP-Version:

php --version  
  
# PHP 7.0.33-0+deb9u1 (cli) (gebaut: Dec  7 2018 11:36:49) (NTS)  
# Copyright (c) 1997-2017 The PHP Group  
# Zend Engine v3.0.0, Copyright (c) 1998-2017 Zend Technologies  
#     mit Zend OPcache v7.0.33-0+deb9u1, Copyright (c) 1999-2017, von Zend Technologies  

Der PHP-FPM-Dienst wird automatisch gestartet und beim Neustart auf dem Debian 9-System aktiviert, sodass es nicht notwendig ist, ihn manuell zu starten und zu aktivieren. Wir können zum nächsten Schritt übergehen, der darin besteht, kostenlose SSL-Zertifikate von Let’s Encrypt CA zu erhalten.

Schritt 3 - Installieren Sie den acme.sh-Client und erhalten Sie das Let’s Encrypt-Zertifikat (optional)

Die Sicherung Ihrer Website mit HTTPS ist nicht unbedingt erforderlich, aber es ist eine gute Praxis, den Datenverkehr Ihrer Website zu sichern. Um ein TLS-Zertifikat von Let’s Encrypt zu erhalten, verwenden wir den acme.sh-Client. Acme.sh ist eine reine Unix-Shell-Software zum Erhalten von TLS-Zertifikaten von Let’s Encrypt mit null Abhängigkeiten.

Laden Sie acme.sh herunter und installieren Sie es:

sudo mkdir /etc/letsencrypt  
git clone https://github.com/Neilpang/acme.sh.git  
cd acme.sh  
sudo ./acme.sh --install --home /etc/letsencrypt --accountemail [email protected]  
cd ~

Überprüfen Sie die acme.sh-Version:

/etc/letsencrypt/acme.sh --version  
# v2.8.0

Erhalten Sie RSA- und ECC/ECDSA-Zertifikate für Ihre Domain/Ihren Hostnamen:

# RSA 2048  
sudo /etc/letsencrypt/acme.sh --issue --standalone --home /etc/letsencrypt -d example.com --keylength 2048  
# ECDSA  
sudo /etc/letsencrypt/acme.sh --issue --standalone --home /etc/letsencrypt -d example.com --keylength ec-256

Nach dem Ausführen der obigen Befehle befinden sich Ihre Zertifikate und Schlüssel in:

  • Für RSA: Verzeichnis /etc/letsencrypt/example.com.
  • Für ECC/ECDSA: Verzeichnis /etc/letsencrypt/example.com_ecc.

Schritt 3 - Installieren Sie NGINX und konfigurieren Sie NGINX für Matomo

Matomo kann gut mit vielen beliebten Webserver-Software arbeiten. In diesem Tutorial haben wir Nginx ausgewählt.

Laden Sie Nginx aus dem Debian-Repository herunter und installieren Sie es:

sudo apt install -y nginx

Überprüfen Sie die Nginx-Version:

sudo nginx -v  
# nginx version: nginx/1.10.3

Konfigurieren Sie Nginx für Matomo, indem Sie Folgendes ausführen:

sudo vim /etc/nginx/sites-available/matomo.conf  

Und fügen Sie die folgende Konfiguration in die Datei ein:

server {  
  
  listen [::]:443 ssl http2;  
  listen 443 ssl http2;  
  listen [::]:80;  
  listen 80;  
  
  server_name example.com;  
  root /var/www/matomo/;  
  index index.php;  
  
  ssl_certificate /etc/letsencrypt/example.com/fullchain.cer;   
  ssl_certificate_key /etc/letsencrypt/example.com/example.com.key;   
  ssl_certificate /etc/letsencrypt/example.com_ecc/fullchain.cer;  
  ssl_certificate_key /etc/letsencrypt/example.com_ecc/example.com.key;  
  
  location ~ ^/(index|matomo|piwik|js/index).php {  
    include snippets/fastcgi-php.conf;  
    fastcgi_param HTTP_PROXY "";   
    fastcgi_pass unix:/var/run/php/php7.0-fpm.sock;   
  }    
  
  location = /plugins/HeatmapSessionRecording/configs.php {  
    include snippets/fastcgi-php.conf;  
    fastcgi_param HTTP_PROXY "";  
    fastcgi_pass unix:/var/run/php/php7.0-fpm.sock;  
  }  
  
  location ~* ^.+\.php$ {  
    deny all;  
    return 403;  
  }  
  
  location / {  
    try_files $uri $uri/ =404;  
  }    
  
  location ~ /(config|tmp|core|lang) {  
    deny all;  
    return 403;  
  }  
  
  location ~ \.(gif|ico|jpg|png|svg|js|css|htm|html|mp3|mp4|wav|ogg|avi|ttf|eot|woff|woff2|json)$ {  
    allow all;  
  }  
  
  location ~ /(libs|vendor|plugins|misc/user) {  
    deny all;  
    return 403;  
  }  
  
}

HINWEIS: Für eine vollständige und produktionsbereite Nginx-Konfiguration für Matomo besuchen Sie https://github.com/matomo-org/matomo-nginx.

Aktivieren Sie die neue matomo.conf-Konfiguration, indem Sie die Datei mit dem sites-enabled-Verzeichnis verlinken.

sudo ln -s /etc/nginx/sites-available/matomo.conf /etc/nginx/sites-enabled

Überprüfen Sie die Nginx-Konfiguration auf Syntaxfehler:

sudo nginx -t

Laden Sie den Nginx-Dienst neu:

sudo systemctl reload nginx.service

Schritt 4 - Installieren Sie Matomo Analytics

Erstellen Sie das Verzeichnis /var/www:

sudo mkdir -p /var/www

Navigieren Sie zum Verzeichnis /var/www:

cd /var/www/

Laden Sie die neueste Version von Matomo über wget herunter und entpacken Sie sie:

sudo wget https://builds.matomo.org/matomo.zip && sudo unzip matomo.zip  

Entfernen Sie die heruntergeladene matomo.zip-Datei:

sudo rm matomo.zip

Ändern Sie den Eigentümer des Verzeichnisses /var/www/matomo auf den Benutzer www-data:

sudo chown -R www-data:www-data /var/www/matomo

Schritt 5 - Vervollständigen Sie die Matomo Analytics-Einrichtung

Öffnen Sie Ihre Website in einem Webbrowser und folgen Sie dem Matomo-Webinstallationsassistenten.

Zuerst sollte die Willkommensnachricht von Matomo erscheinen. Klicken Sie auf die Schaltfläche „Weiter“:

Matomo Installationsassistent

Danach sehen Sie eine Seite mit „Systemcheck“. Wenn etwas fehlt, sehen Sie eine Warnung. Wenn alles mit einem grünen Häkchen markiert ist, klicken Sie auf die Schaltfläche „Weiter“, um zum nächsten Schritt zu gelangen:

Systemcheck

Füllen Sie als Nächstes die Datenbankdetails aus und klicken Sie auf die Schaltfläche „Weiter“:

Datenbankeinrichtung

Wenn alles gut gelaufen ist, sollten Sie die Nachricht „Tabellen erfolgreich erstellt!“ sehen:

Datenbanktabellen erstellen

Erstellen Sie ein Matomo-Superbenutzerkonto und klicken Sie auf die Schaltfläche „Weiter“:

Superbenutzerkonto erstellen

Als Nächstes richten Sie die erste Website ein, die Sie mit Matomo verfolgen und analysieren möchten. Später können Sie weitere Websites hinzufügen, die Sie mit Matomo verfolgen möchten:

Website zu Matomo hinzufügen

Als Nächstes erhalten Sie den JavaScript-Tracking-Code für Ihre Website, den Sie hinzufügen müssen, um mit dem Tracking zu beginnen.

Javascript-Tracking-Code

Als Nächstes sollten Sie sehen, dass die Matomo-Installation abgeschlossen ist.

Matomo-Installation abgeschlossen

Herzlichen Glückwunsch! Ihre Matomo-Installation ist abgeschlossen.

Links

Share: X/Twitter LinkedIn

Erhalte neue Beiträge in deinem Posteingang.

Kein Spam. Jederzeit abmelden.