Cách cài đặt Matomo Web Analytics trên Debian 9

theanh

Administrator
Nhân viên
Matomo (trước đây làPiwik)là mộtmiễn phívàmã nguồn mởphân tích webứng dụng do một nhóm các nhà phát triển quốc tế phát triển, chạy trên máy chủ webPHP/MySQL. Nó theo dõilượt truy cậptrực tuyến đến một hoặc nhiềutrang webvà hiển thị báo cáo về những lượt truy cập này để phân tích. Bạn có thể coi nó như một giải pháp thay thế cho Google Analytics. Matomo là mã nguồn mở và mã của nó được công khai trên Github. Một số tính năng của nó là:Kiểm tra A/B, Bản đồ nhiệt, Phễu, API theo dõi và báo cáo, Google AdWords, Quảng cáo Facebook, Quảng cáo Bing, Chi phí cho mỗi lần nhấp (CPC), v.v. Hướng dẫn này sẽ chỉ cho bạn cách cài đặt Matomo trên hệ thống Debian 9 (stretch) sử dụng Nginx làm máy chủ web và chúng tôi sẽ bảo mật trang web bằng chứng chỉ SSL Let's Encrypt.

Yêu cầu​

Để chạy Matomo (Piwik) trên hệ thống Debian của bạn, bạn sẽ cần một vài những thứ:
  • Máy chủ web như Apache hoặc Nginx.
  • Phiên bản PHP 5.5.9 trở lên với pdovà pdo_mysqlhoặc mysqli, gd, xml, curl và mbsting. Khuyến nghị PHP 7+.
  • MySQL phiên bản 5.5 trở lên hoặc phiên bản MariaDB tương đương. MySQL 5.7 trở lên được khuyến nghị.

Điều kiện tiên quyết​

  • Hệ điều hành đang chạy Debian 9 (stretch).
  • Người dùng không phải root có quyền sudo.

Các bước ban đầu​

Kiểm tra phiên bản Debian của bạn:
Mã:
lsb_release -ds
# Debian GNU/Linux 9.6 (stretch)
Thiết lập múi giờ:
Mã:
dpkg-reconfigure tzdata
Cập nhật các gói hệ điều hành (phần mềm) của bạn. Đây là bước đầu tiên quan trọng vì nó đảm bảo bạn có các bản cập nhật và bản sửa lỗi bảo mật mới nhất cho các gói phần mềm mặc định của hệ điều hành:
Mã:
apt update && apt upgrade -y
Cài đặt một số gói thiết yếu cần thiết cho việc quản trị cơ bản của hệ điều hành Debian:
Mã:
apt install -y curl wget vim gitunzip socat sudo

Bước 1 - Cài đặt MySQL và tạo cơ sở dữ liệu cho Matomo​

Matomo hỗ trợ cơ sở dữ liệu MySQL và MariaDB.Nhóm Debian đã thay thế MySQL bằng MariaDB làm cơ sở dữ liệu mặc định từ Debian 9 (stretch), vì vậy tronghướng dẫn này, chúng ta sẽ sử dụng MariaDB làm máy chủ cơ sở dữ liệu. Nếu bạn muốn cài đặt MySQL gốc, bạn có thể thêm và sử dụng kho lưu trữ MySQL chính thức do Oracle quản lý.

Cài đặt máy chủ cơ sở dữ liệu MariaDB:
Mã:
sudo apt install -y mariadb-server
Kiểm tra phiên bản MariaDB:
Mã:
mysql --version
#mysql Ver 14.14 Distrib 5.7.24, dành cho Linux (x86_64) bằng trình bao bọc EditLine
Chạymysql_secure installationscript để cải thiện bảo mật MariaDB và đặt mật khẩu cho MariaDBrootuser:
Mã:
sudo mysql_secure_installation
Trả lời từng câu hỏi sau:
Mã:
Nhập mật khẩu hiện tại cho root (nhập nếu không có): [B]Nhấn Enter
[/b]Đặt mật khẩu root? [Y/n][B] y[/b]
Mật khẩu mới: [B]your_secure_password[/b]
Nhập lại mật khẩu mới:[B]your_secure_password[/b]
Xóa người dùng ẩn danh? [Y/n] [B]Y[/b]
Không cho phép root đăng nhập từ xa? [Y/n] [B]Y[/b]
Xóa cơ sở dữ liệu thử nghiệm và quyền truy cập vào cơ sở dữ liệu đó? [Y/n] [B]Y[/b]
Tải lại bảng đặc quyền ngay bây giờ? [Y/n] [B]Y[/b]
Kết nối với shell MariaDB với tư cách là người dùng root:
Mã:
sudo mysql -u root -p
# Nhập mật khẩu
Tạo một cơ sở dữ liệu MariaDB trốngvà người dùng cho Matomovà ghi nhớ thông tin đăng nhập:
Mã:
mysql>CREATE DATABASE dbname;
mysql>GRANT ALL ON dbname.* TO 'username' IDENTIFIED BY 'password';
mysql>FLUSH PRIVILEGES;
Thoát khỏi MariaDB:
Mã:
mysql>exit
Thay thếdbname,usernamepasswordbằng tên của riêng bạn.

Bước 2 - Cài đặt PHP và các tiện ích mở rộng PHP cần thiết​

Cài đặt PHP cũng như các tiện ích mở rộng PHP cần thiết phần mở rộng:
Mã:
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
Kiểm tra phiên bản PHP:
Mã:
php --version

#PHP 7.0.33-0+deb9u1 (cli) (xây dựng: 7 tháng 12 năm 2018 11:36:49) (NTS)
# Bản quyền (c) 1997-2017 The PHP Group
# Zend Engine v3.0.0, Bản quyền (c) 1998-2017 Zend Technologies
# với Zend OPcache v7.0.33-0+deb9u1, Bản quyền (c) 1999-2017, của Zend Technologies
Dịch vụ PHP-FPM được tự động khởi động và bật khi khởi động lại trên hệ thống Debian 9, do đó không cần phải khởi động và bật thủ công.Chúng ta có thể chuyển sang bước tiếp theo, đó là lấy chứng chỉ SSL miễn phí từ Let's Encrypt CA.

Bước 3 - Cài đặtacme.shclient và lấy chứng chỉ Let's Encrypt (tùy chọn)​

Không nhất thiết phải bảo mật trang web của bạn bằng HTTPS, nhưng đây là một biện pháp tốt để bảo mật lưu lượng truy cập trang web của bạn. Để lấy chứng chỉ TLS từ Let's Encrypt, chúng ta sẽ sử dụng acme.sh client. Acme.sh là phần mềm shell Unix thuần túy để lấy chứng chỉ TLS từ Let's Encrypt mà không cần bất kỳ sự phụ thuộc nào.

Tải xuống và cài đặtacme.sh:
Mã:
sudo mkdir /etc/letsencrypt
git clone https://github.com/Neilpang/acme.sh.git
cd acme.sh
sudo ./acme.sh --install --home /etc/letsencrypt --accountemail[emailprotected]
cd ~
Kiểm tra phiên bản acme.sh:
Mã:
/etc/letsencrypt/acme.sh --version
# v2.8.0
Lấy chứng chỉRSAECC/ECDSAcho tên miền/tên máy chủ của bạn:
Mã:
# 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
Sau khi chạy các lệnh trên, chứng chỉkhóacủa bạn sẽ nằm trong:
  • Đối vớiRSA: /etc/letsencrypt/example.comthư mục.
  • Đối vớiECC/ECDSA: /etc/letsencrypt/example.com_eccthư mục.

Bước 3 - Cài đặt NGINX và cấu hình NGINX cho Matomo​

Matomo có thể hoạt động tốt với nhiều phần mềm máy chủ web phổ biến. Trong hướng dẫn này, chúng tôi đã chọn Nginx.

Tải xuống và cài đặt Nginx từ Debianrepository:
Mã:
sudo apt install -y nginx
Kiểm tra phiên bản Nginx:
Mã:
sudo nginx -v
#nginx version: nginx/1.10.3
Cấu hình Nginx cho Matomo bằng cách chạy:
Mã:
sudo vim /etc/nginx/sites-available/matomo.conf
Và điền cấu hình sau vào tệp:
Mã:
máy chủ {

 lắng nghe [::]:443 ssl http2;
 lắng nghe 443 ssl http2;
 lắng nghe [::]:80;
 lắng nghe 80;

 tên_máy_chủ example.com;
 gốc /var/www/matomo/;
 chỉ mục index.php;

 chứng_chỉ_số_ssl /etc/letsencrypt/example.com/fullchain.cer; 
 khóa_chứng_chỉ_số_ssl /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;

 vị trí ~ ^/(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; 
 }
 
 vị trí = /plugins/HeatmapSessionRecording/configs.php {
 include snippets/fastcgi-php.conf;
 fastcgi_param HTTP_PROXY "";
 fastcgi_pass unix:/var/run/php/php7.0-fpm.sock;
 }

 vị trí ~* ^.+\.php$ {
 từ chối tất cả;
 trả về 403;
 }

 vị trí / {
 try_files $uri $uri/ =404;
 }
 
 vị trí ~ /(config|tmp|core|lang) {
 từ chối tất cả;
 trả về 403;
 }

 vị trí ~ \.(gif|ico|jpg|png|svg|js|css|htm|html|mp3|mp4|wav|ogg|avi|ttf|eot|woff|woff2|json)$ {
 cho phép tất cả;
 }

 vị trí ~ /(libs|vendor|plugins|misc/user) {
 từ chối tất cả;
 trả về 403;
 }

}
LƯU Ý:Để có cấu hình Nginx hoàn chỉnh và sẵn sàng cho sản xuất cho Matomo, hãy truy cậphttps://github.com/matomo-org/matomo-nginx.

Kích hoạt cấu hìnhmatomo.confmới bằng cách liên kết tệp đến thư mụcsites-enabled.
Mã:
sudo ln -s /etc/nginx/sites-available/matomo.conf /etc/nginx/sites-enabled
Kiểm tra cấu hình Nginx để tìm lỗi cú pháp:
Mã:
sudo nginx -t
Tải lại dịch vụ Nginx:
Mã:
sudo systemctl reload nginx.service

Bước 4 - Cài đặt Matomo Analytics​

Tạo thư mục/var/www:
Mã:
sudo mkdir -p /var/www
Điều hướng đến thư mục/var/www:
Mã:
cd /var/www/
Tải xuống bản phát hành mới nhất của Matomo qua wget và giải nén nó:
Mã:
sudo wget https://builds.matomo.org/matomo.zip && sudo unzip matomo.zip
Xóa tệpmatomo.zip đã tải xuống:
Mã:
sudo rm matomo.zip
Thay đổi quyền sở hữu thư mục/var/www/matomothànhwww-datauser:
Mã:
sudo chown -R www-data:www-data /var/www/matomo

Bước 5 - Hoàn tất thiết lập Matomo Analytics​

Mở trang web của bạn trong trình duyệt web và làm theo trình hướng dẫn cài đặt web Matomo.

Đầu tiên, thông báo chào mừng Matomo sẽ xuất hiện. Nhấp vào nút"Tiếp theo":



Sau đó, bạn sẽ thấy trang"Kiểm tra hệ thống". Nếu thiếu thứ gì đó, bạn sẽ thấy cảnh báo. Nếu mọi thứ đều được đánh dấu bằng dấu kiểm màu xanh lá cây, hãy nhấp vào nút"Tiếp theo" để tiến hành bước tiếp theo:



Tiếp theo, điền thông tin chi tiết về cơ sở dữ liệu và nhấp vào nút"Tiếp theo":



Nếu mọi thứ diễn ra tốt đẹp với thiết lập cơ sở dữ liệu, bạn sẽ thấy thông báo"Bảng đã được tạo thành công!":



Tạo siêu tài khoản người dùng Matomo và nhấp vào nút"Tiếp theo":



Tiếp theo, hãy thiết lập trang web đầu tiên mà bạn muốn theo dõi và phân tích bằng Matomo. Sau đó, bạn có thể thêm nhiều trang web để theo dõi bằng Matomo:



Tiếp theo, bạn sẽ được cung cấp mã theo dõi JavaScript cho trang web của mình mà bạn cần thêm để bắt đầu theo dõi.



Tiếp theo, bạn sẽ thấy quá trình cài đặt Matomo đã hoàn tất.



Xin chúc mừng! Quá trình cài đặt Matomo của bạn đã hoàn tất.

Liên kết​

 
Back
Bên trên