GNU/Linux >> Belajar Linux >  >> Fedora

Cara Memasang Matomo Web Analytics di Fedora 29

Matomo (sebelumnya Piwik) adalah aplikasi analisis web gratis dan open source yang dikembangkan oleh tim developer internasional, yang berjalan di server web PHP/MySQL. Ini melacak kunjungan online ke satu atau beberapa situs web dan menampilkan laporan tentang kunjungan ini untuk analisis. Anda dapat menganggapnya sebagai alternatif untuk Google Analytics. Matomo adalah open source dan kodenya tersedia untuk umum di Github. Beberapa fitur yang dimilikinya adalah: A/B Testing, Heatmaps, Funnels, Tracking and Reporting API, Google AdWords, Facebook Ads, Bing Ads, Cost Per Click (CPC), dll. Tutorial ini akan menunjukkan cara menginstal Matomo di sistem Fedora 29 menggunakan Nginx sebagai server web dan kami akan mengamankan situs web dengan sertifikat SSL Let's Encrypt.

Persyaratan

Untuk menjalankan Matomo (Piwik) di sistem Fedora 29, Anda memerlukan beberapa hal:

  • Server web seperti Apache, Nginx, IIS.
  • PHP versi 5.5.9 atau lebih tinggi dengan ekstensi pdo dan pdo_mysql atau mysqli, gd, xml, curl, dan mbsting. PHP 7+ direkomendasikan.
  • MySQL versi 5.5 atau lebih tinggi, atau versi MariaDB yang setara. MySQL 5.7+ direkomendasikan.

Prasyarat

  • Sistem operasi yang menjalankan Fedora 29.
  • Pengguna non-root dengan hak istimewa sudo.

Langkah awal

Periksa versi Fedora Anda:

cat /etc/fedora-release
# Fedora release 29 (Twenty Nine)

Siapkan zona waktu:

timedatectl list-timezones
sudo timedatectl set-timezone 'Region/City'

Perbarui paket sistem operasi Anda (perangkat lunak). Ini adalah langkah pertama yang penting karena memastikan Anda memiliki pembaruan dan perbaikan keamanan terbaru untuk paket perangkat lunak default sistem operasi Anda:

sudo dnf check-update; sudo dnf update -y

Instal beberapa paket penting yang diperlukan untuk administrasi dasar sistem operasi Fedora:

sudo dnf install -y curl wget vim git unzip socat

Langkah 1 - Instal MariaDB dan buat database untuk Matomo

Matomo mendukung database MySQL dan MariaDB. Dalam tutorial ini, kita akan menggunakan MariaDB sebagai server database.

Instal server database MariaDB:

sudo dnf install -y mariadb-server

Periksa versi MariaDB:

mysql --version
# mysql  Ver 15.1 Distrib 10.3.11-MariaDB, for Linux (x86_64) using readline 5.1

Mulai dan aktifkan layanan MariaDB:

sudo systemctl start mariadb.service
sudo systemctl enable mariadb.service

Jalankan mysql_secure installation skrip untuk meningkatkan keamanan MariaDB dan menyetel sandi untuk MariaDB root pengguna:

sudo mysql_secure_installation

Jawab setiap pertanyaan:

Would you like to setup VALIDATE PASSWORD plugin? N
New password: your_secure_password
Re-enter new password: your_secure_password
Remove anonymous users? [Y/n] Y
Disallow root login remotely? [Y/n] Y
Remove test database and access to it? [Y/n] Y
Reload privilege tables now? [Y/n] Y

Hubungkan ke Shell MariaDB sebagai pengguna root:

sudo mysql -u root -p
# Enter password

Buat database dan pengguna MariaDB kosong untuk Matomo dan ingat kredensialnya:

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

Keluar dari MariaDB:

mysql> exit

Ganti dbnameusername dan password dengan nama Anda sendiri.

Langkah 2 - Instal PHP dan ekstensi PHP yang diperlukan

Instal PHP, serta ekstensi PHP yang diperlukan:

sudo dnf install -y php php-cli php-fpm php-common php-curl php-gd php-xml php-mbstring php-mysqlnd php-json

Periksa versi PHP:

php --version

# PHP 7.2.14 (cli) (built: Jan  8 2019 09:59:17) ( NTS )
# Copyright (c) 1997-2018 The PHP Group
# Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies

Mulai dan aktifkan layanan PHP-FPM:

sudo systemctl start php-fpm.service
sudo systemctl enable php-fpm.service

Kita dapat melanjutkan ke langkah berikutnya, yaitu mendapatkan sertifikat SSL gratis dari Let's Encrypt CA.

Langkah 3 - Instal acme.sh klien dan dapatkan sertifikat Let's Encrypt (opsional )

Mengamankan situs web Anda dengan HTTPS tidak diperlukan, tetapi ini adalah praktik yang baik untuk mengamankan lalu lintas situs Anda. Untuk mendapatkan sertifikat TLS dari Let's Encrypt, kami akan menggunakan klien Acme.sh. Acme.sh adalah software shell UNIX murni untuk mendapatkan sertifikat TLS dari Let's Encrypt tanpa ketergantungan.

Unduh dan instal Acme.sh:

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 ~

Periksa versi Acme.sh :

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

Dapatkan RSA dan ECC/ECDSA sertifikat untuk domain/hostname Anda:

# 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

Setelah menjalankan perintah di atas, sertifikat your Anda dan kunci akan di:

  • Untuk RSA/etc/letsencrypt/example.com direktori.
  • Untuk ECC/ECDSA/etc/letsencrypt/example.com_ecc direktori.

Langkah 3 - Instal NGINX dan konfigurasikan NGINX untuk Matomo

Matomo dapat bekerja dengan baik dengan banyak software server web populer. Dalam tutorial ini, kami memilih Nginx.

Download dan instal Nginx dari repositori Fedora:

sudo dnf install -y nginx

Periksa versi Nginx:

sudo nginx -v
# nginx version: nginx/1.14.1

Mulai dan aktifkan layanan Nginx:

sudo systemctl start nginx.service
sudo systemctl enable nginx.service

Konfigurasikan Nginx untuk Matomo dengan menjalankan:

sudo vim /etc/nginx/conf.d/matomo.conf

Dan isi file dengan konfigurasi berikut:

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 {
fastcgi_split_path_info ^(.+\.php)(/.+)$;
try_files $fastcgi_script_name =404;
set $path_info $fastcgi_path_info;
fastcgi_param PATH_INFO $path_info;
fastcgi_index index.php;
include fastcgi.conf;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param SCRIPT_NAME $fastcgi_script_name;
fastcgi_param HTTP_PROXY "";
fastcgi_pass unix:/run/php-fpm/www.sock;
}

location = /plugins/HeatmapSessionRecording/configs.php {
fastcgi_split_path_info ^(.+\.php)(/.+)$;
try_files $fastcgi_script_name =404;
set $path_info $fastcgi_path_info;
fastcgi_param PATH_INFO $path_info;
fastcgi_index index.php;
include fastcgi.conf;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param SCRIPT_NAME $fastcgi_script_name;
fastcgi_param HTTP_PROXY "";
fastcgi_pass unix:/run/php-fpm/www.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;
}

}

CATATANUntuk konfigurasi Nginx yang lengkap dan siap produksi untuk Matomo, kunjungi https://github.com/matomo-org/matomo-nginx.

Periksa konfigurasi Nginx untuk kesalahan sintaks:

sudo nginx -t

Muat ulang layanan Nginx:

sudo systemctl reload nginx.service

Langkah 4 - Instal Matomo Analytics

Buat /var/www direktori:

sudo mkdir -p /var/www/

Buka /var/www direktori:

cd /var/www/

Unduh rilis terbaru Matomo melalui wget dan unzip:

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

Hapus hasil matomo.zip berkas:

sudo rm matomo.zip

Ubah kepemilikan /var/www/matomo direktori ke nginx  pengguna:

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

Jalankan sudo vim /etc/php-fpm.d/www.conf dan setel pengguna dan grup ke nginx . Awalnya, ini akan disetel ke pengguna dan grup apache .

sudo vim /etc/php-fpm.d/www.conf
# user = nginx
# group = nginx

Mulai ulang layanan PHP-FPM.

sudo systemctl restart php-fpm.service

Langkah 5 - Selesaikan penyiapan Matomo Analytics

Buka situs Anda di browser web dan ikuti wizard penginstalan web Matomo.

Pertama, pesan selamat datang Matomo akan muncul. Klik "Berikutnya" tombol:

Setelah itu, Anda akan melihat "Pemeriksaan Sistem" halaman. Jika ada sesuatu yang hilang, Anda akan melihat peringatan. Jika semuanya ditandai dengan tanda centang hijau, klik "Berikutnya" tombol untuk melanjutkan ke langkah berikutnya:

Selanjutnya, isi detail database dan klik "Berikutnya" tombol:

Jika semuanya berjalan lancar dengan penyiapan basis data, Anda akan melihat " Tabel dibuat dengan sukses!" pesan:

Buat akun pengguna super Matomo dan klik "Berikutnya" tombol:

Selanjutnya, siapkan situs web pertama yang ingin Anda lacak dan analisis dengan Matomo. Nanti, Anda dapat menambahkan lebih banyak situs untuk dilacak dengan Matomo:

Selanjutnya, Anda akan diberikan kode pelacakan JavaScript untuk situs Anda yang perlu Anda tambahkan untuk memulai pelacakan.

Selanjutnya, Anda akan melihat bahwa instalasi Matomo telah selesai.

Selamat! Instalasi Matomo Anda selesai.

  • https://matomo.org/
  • https://github.com/matomo-org/matomo
  • https://github.com/matomo-org/matomo-nginx

Fedora
  1. Cara Menginstal Matomo Web Analytics di CentOS 7

  2. Cara Menginstal CMake di Fedora 35

  3. Cara Menginstal Matomo Web Analytics di Ubuntu 20.04

  1. Cara Memasang Matomo Web Analytics di Debian 11

  2. Cara Menginstal Drupal 9 di Fedora 34

  3. Cara Menginstal Matomo Web Analytics di Ubuntu 18.04 LTS

  1. Cara Menginstal Spotify di Fedora 35

  2. Cara Menginstal Slack di Fedora 35

  3. Cara Menginstal Nginx di Fedora 35