Cara Memasang Matomo Analytics di FreeBSD 11

Matomo (sebelumnya Piwik) adalah platform analisis sumber terbuka, alternatif terbuka untuk Google Analytics. Sumber Matomo dihoskan pada GitHub . Ia adalah program perisian PHP / MySQL yang dimuatkan sepenuhnya yang anda muat turun dan pasang pada pelayan web anda sendiri. Dalam panduan ini, kami akan memasang Matomo pada contoh pelayan FreeBSD 11 Vultr yang segar.

Keperluan

  • Pelayan web seperti Nginx, Apache, atau IIS. Dalam panduan ini, kami akan menggunakan Nginx.
  • MySQL / MariaDB versi 5.5 atau lebih besar. Dalam panduan ini, kami akan menggunakan MariaDB.
  • Versi PHP 5.5.9 atau lebih tinggi.
  • Sambungan PHP pdodan pdo_mysql, atau mysqlipelanjutan.

Sebelum awak bermula

Semak versi FreeBSD.

uname -ro
# FreeBSD 11.2-RELEASE

Pastikan sistem FreeBSD anda terkini.

freebsd-update fetch install
pkg update && pkg upgrade -y

Memasang sudo, vim, unzip, wgetdan bashpakej jika mereka tidak hadir pada sistem anda.

pkg install -y sudo vim unzip wget bash

Buat akaun pengguna baru dengan nama pengguna pilihan anda (kami akan gunakan johndoe).

adduser

# Username: johndoe
# Full name: John Doe
# Uid (Leave empty for default): <Enter>
# Login group [johndoe]: <Enter>
# Login group is johndoe. Invite johndoe into other groups? []: wheel
# Login class [default]: <Enter>
# Shell (sh csh tcsh nologin) [sh]: bash
# Home directory [/home/johndoe]: <Enter>
# Home directory permissions (Leave empty for default): <Enter>
# Use password-based authentication? [yes]: <Enter>
# Use an empty password? (yes/no) [no]: <Enter>
# Use a random password? (yes/no) [no]: <Enter>
# Enter password: your_secure_password
# Enter password again: your_secure_password
# Lock out the account after creation? [no]: <Enter>
# OK? (yes/no): yes
# Add another user? (yes/no): no
# Goodbye!

Jalankan visudoarahan dan %wheel ALL=(ALL) ALLbaris komen , untuk membolehkan ahli wheelkumpulan melaksanakan sebarang arahan.

visudo

# Uncomment by removing hash (#) sign
# %wheel ALL=(ALL) ALL

Sekarang, beralih ke pengguna yang baru anda buat dengan suarahan.

su - johndoe

CATATAN: Ganti johndoedengan nama pengguna anda.

Sediakan zon waktu.

sudo tzsetup

Pasang PHP

Pasang PHP, serta pelanjutan PHP yang diperlukan.

sudo pkg install -y php72 php72-ctype php72-curl php72-dom php72-hash php72-iconv php72-gd php72-json php72-mbstring php72-openssl php72-session php72-simplexml php72-xml php72-zip php72-zlib php72-pdo php72-pdo_mysql php72-mysqli php72-filter php72-ftp php72-tokenizer php72-calendar php72-pecl-APCu php72-opcache

Semak versi.

php --version
# PHP 7.2.10 (cli) (built: Oct  2 2018 01:30:18) ( NTS )
# Copyright (c) 1997-2018 The PHP Group
# Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
#     with Zend OPcache v7.2.10, Copyright (c) 1999-2018, by Zend Technologies

Pautan lembut php.ini-productionke php.ini.

sudo ln -s /usr/local/etc/php.ini-production /usr/local/etc/php.ini

Dayakan dan mulakan PHP-FPM.

sudo sysrc php_fpm_enable=yes
sudo service php-fpm start

Pasang MariaDB

Muat turun dan pasang MariaDB.

sudo pkg install -y mariadb102-client mariadb102-server

Semak versi.

mysql --version
# mysql  Ver 15.1 Distrib 10.2.17-MariaDB, for FreeBSD11.2 (amd64) using readline 5.1

Aktifkan dan mulakan MariaDB.

sudo sysrc mysql_enable="yes" 
sudo service mysql-server start

Jalankan mysql_secure_installationskrip untuk meningkatkan keselamatan pemasangan MariaDB anda.

sudo mysql_secure_installation

Masuk ke MariaDB sebagai pengguna root.

sudo mysql -u root -p
# Enter password:

Buat pangkalan data dan pengguna MariaDB baru, dan ingatlah kelayakannya.

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

Keluar dari MariaDB.

exit

Pasang dan konfigurasikan Nginx

Pasang Nginx.

sudo pkg install -y nginx

Semak versi.

nginx -v
# nginx version: nginx/1.14.0

Dayakan dan mulailah Nginx.

sudo sysrc nginx_enable=yes
sudo service nginx start

Jalankan sudo vim /usr/local/etc/nginx/matomo.confdan atur Nginx untuk Matomo.

server {

  listen [::]:80;
  listen 80;

  server_name matomo.example.com;

  root /usr/local/www/matomo/;

  index index.php;

  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;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    include fastcgi_params;
    fastcgi_param HTTP_PROXY "";
    fastcgi_pass 127.0.0.1:9000;
  }

  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;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    include fastcgi_params;
    fastcgi_param HTTP_PROXY "";
    fastcgi_pass 127.0.0.1:9000;
  }

  location ~* ^.+\.php$ {
    deny all;
    return 403;
  }

  location / {
    try_files $uri $uri/ =404;
  }

  location ~ /(config|tmp|core|lang) {
    deny all;
    return 403; 
  }

  location ~ /\.ht {
    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;
    expires 1h;
    add_header Pragma public;
    add_header Cache-Control "public";
  }

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

  location ~/(.*\.md|LEGALNOTICE|LICENSE) {
    default_type text/plain;
  }

}

Simpan fail dan keluar dengan :+ W+ Q.

Sekarang kita perlu memasukkan matomo.conffail ke nginx.conffail utama .

Jalankan sudo vim /usr/local/etc/nginx/nginx.confdan tambah baris berikut ke http {}blok.

include matomo.conf;

Konfigurasi Nginx ujian.

sudo nginx -t

Muat semula Nginx.

sudo service nginx reload

Pasang Matomo

Buat direktori root dokumen.

sudo mkdir -p /usr/local/www/matomo

Tukar pemilikan /usr/local/www/matomodirektori ke johndoe.

sudo chown -R johndoe:johndoe /usr/local/www/matomo

Navigasi ke direktori root dokumen.

cd /usr/local/www/matomo

Muat turun keluaran Matomo terkini dan nyah zipnya.

wget https://builds.matomo.org/matomo.zip
unzip matomo.zip
rm matomo.zip
mv matomo/* . && mv matomo/.* .
rmdir matomo

Tukar pemilikan /usr/local/www/matomodirektori ke www.

sudo chown -R www:www /usr/local/www/matomo

Buka penyemak imbas web anda dan arahkan ke IP / URL tempat anda memuat naik Matomo. Anda akan melihat "Skrin Selamat Datang Pemasangan Matomo" . Sekiranya terdapat sebarang masalah, Matomo akan mengenal pasti mereka dan menawarkan penyelesaian. Ikut arahan pada skrin untuk menyelesaikan pemasangan Matomo.



Leave a Comment

Pandangan tentang 26 Teknik Analisis Data Besar: Bahagian 1

Pandangan tentang 26 Teknik Analisis Data Besar: Bahagian 1

Pandangan tentang 26 Teknik Analisis Data Besar: Bahagian 1

6 Perkara Yang Sangat Menggila Tentang Nintendo Switch

6 Perkara Yang Sangat Menggila Tentang Nintendo Switch

Ramai daripada anda tahu Switch akan keluar pada Mac 2017 dan ciri baharunya. Bagi yang tidak tahu, kami telah menyediakan senarai ciri yang menjadikan 'Tukar' sebagai 'gajet yang mesti ada'.

Janji Teknologi Yang Masih Tidak Ditepati

Janji Teknologi Yang Masih Tidak Ditepati

Adakah anda menunggu gergasi teknologi memenuhi janji mereka? semak apa yang masih belum dihantar.

Fungsi Lapisan Seni Bina Rujukan Data Besar

Fungsi Lapisan Seni Bina Rujukan Data Besar

Baca blog untuk mengetahui lapisan berbeza dalam Seni Bina Data Besar dan fungsinya dengan cara yang paling mudah.

Bagaimana AI Boleh Mengambil Automasi Proses ke Tahap Seterusnya?

Bagaimana AI Boleh Mengambil Automasi Proses ke Tahap Seterusnya?

Baca ini untuk mengetahui cara Kecerdasan Buatan semakin popular di kalangan syarikat berskala kecil dan cara ia meningkatkan kebarangkalian untuk menjadikan mereka berkembang dan memberikan pesaing mereka kelebihan.

CAPTCHA: Berapa Lama Ia Boleh Kekal Sebagai Teknik Berdaya maju Untuk Perbezaan Manusia-AI?

CAPTCHA: Berapa Lama Ia Boleh Kekal Sebagai Teknik Berdaya maju Untuk Perbezaan Manusia-AI?

CAPTCHA telah menjadi agak sukar untuk diselesaikan oleh pengguna dalam beberapa tahun kebelakangan ini. Adakah ia dapat kekal berkesan dalam pengesanan spam dan bot pada masa hadapan?

Keunikan Teknologi: Masa Depan Tamadun Manusia yang Jauh?

Keunikan Teknologi: Masa Depan Tamadun Manusia yang Jauh?

Apabila Sains Berkembang pada kadar yang pantas, mengambil alih banyak usaha kita, risiko untuk menundukkan diri kita kepada Ketunggalan yang tidak dapat dijelaskan juga meningkat. Baca, apakah makna ketunggalan bagi kita.

Teleperubatan Dan Penjagaan Kesihatan Jauh: Masa Depan Ada Di Sini

Teleperubatan Dan Penjagaan Kesihatan Jauh: Masa Depan Ada Di Sini

Apakah teleperubatan, penjagaan kesihatan jauh dan impaknya kepada generasi akan datang? Adakah ia tempat yang baik atau tidak dalam situasi pandemik? Baca blog untuk mencari paparan!

Pernahkah Anda Terfikir Bagaimana Penggodam Mendapatkan Wang?

Pernahkah Anda Terfikir Bagaimana Penggodam Mendapatkan Wang?

Anda mungkin pernah mendengar bahawa penggodam memperoleh banyak wang, tetapi pernahkah anda terfikir bagaimana mereka memperoleh wang seperti itu? Mari berbincang.

Kemas Kini Tambahan macOS Catalina 10.15.4 Menyebabkan Lebih Banyak Isu Daripada Penyelesaian

Kemas Kini Tambahan macOS Catalina 10.15.4 Menyebabkan Lebih Banyak Isu Daripada Penyelesaian

Baru-baru ini Apple mengeluarkan macOS Catalina 10.15.4 kemas kini tambahan untuk menyelesaikan masalah tetapi nampaknya kemas kini itu menyebabkan lebih banyak masalah yang membawa kepada pemusnahan mesin mac. Baca artikel ini untuk mengetahui lebih lanjut