Cách cài đặt Matomo trên CentOS 7 Nginx

Cách cài đặt Matomo trên CentOS 7 Nginx

Trong bài viết này, chúng ta sẽ tìm hiểu cách cài đặt Matomo trên CentOS 7 Nginx.

Matomo, trước đây là Piwik, là một ứng dụng phân tích web mã nguồn mở và miễn phí được phát triển bởi một nhóm các nhà phát triển quốc tế, chạy trên máy chủ web PHP / MySQL. Nó theo dõi các lượt truy cập trực tuyến vào một hoặc nhiều trang web và hiển thị báo cáo về các lượt truy cập này để phân tích.

Tại sao Matomo

Dữ liệu phân tích là của bạn để sở hữu. Dữ liệu Matomo Analytics của bạn là do bạn sở hữu 100%, không có bên ngoài nào dòm ngó.

Không giống như Google Analytics sử dụng dữ liệu của bạn để phục vụ nền tảng quảng cáo của nó, người dùng Matomo có thể sử dụng phân tích một cách an toàn mà không phải lo lắng về việc dữ liệu được sử dụng cho tiếp thị hoặc bất kỳ mục đích nào khác.

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

Trước khi bắt đầu, hãy đảm bảo rằng bạn có những điều sau:

  • VPS hoặc máy chủ chuyên dụng.
  • Hệ điều hành chạy CentOS 7
  • Truy cập vào máy chủ web của bạn (qua shell hoặc FTP)

1. Các bước ban đầu

Luôn cập nhật máy chủ của bạn:

# yum update -y

2. Cài đặt MariaDB 10.4 và tạo cơ sở dữ liệu cho Matomo

Tạo tệp MariaDB.repo trong trình chỉnh sửa yêu thích của bạn:

# vi /etc/yum.repos.d/MariaDB.repo

Và thêm các dòng sau:

# MariaDB 10.4 CentOS repository list
# http://downloads.mariadb.org/mariadb/repositories/
[mariadb]

name = MariaDB
baseurl = http://yum.mariadb.org/10.4/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1

Bây giờ, hãy bắt đầu cài đặt MariaDB 10.4

# yum install MariaDB-client MariaDB-server

Sau khi hoàn tất, hãy khởi động MariaDB:

# systemctl start mariadb.service

# systemctl enable mariadb.service

Bảo mật MySQL

# mysql_secure_installation

2. Cài đặt Nginx

Thêm kho lưu trữ EPEL (Gói bổ sung cho Enterprise Linux):

# yum install epel-release

Bây giờ, cài đặt NGINX bằng lệnh sau:

# yum install nginx

Khởi động và kích hoạt dịch vụ Nginx

# systemctl start nginx

# systemctl enable nginx

Định cấu hình Nginx cho Matomo

# vi /etc/nginx/conf.d/matomo.conf

Thêm các dòng cấu hình sau:

server {

listen [::]:80;
listen 80;

server_name example.com;
root /var/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;
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:/var/run/php-fpm/php-fpm.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:/var/run/php-fpm/php-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;
}

}

Đừng lo lắng về việc chuyển hướng SSL ngay bây giờ. Chúng tôi sẽ cài đặt Let's Encrypt bằng Certbot ở phần sau của bài viết này. Certbot sẽ tự động thêm chuyển hướng SSL và vị trí chứng chỉ trong quá trình lấy chứng chỉ.

Kiểm tra cấu hình

# nginx -t

Nếu kiểm tra thành công, hãy khởi động lại dịch vụ Nginx. Nếu thử nghiệm không thành công, hãy kiểm tra lỗi và sửa đổi tệp cấu hình theo yêu cầu của chúng tôi.

# systemctl restart nginx

3. Cài đặt PHP với PHP-FPM cho Nginx

Cài đặt kho lưu trữ Remi:

# rpm -Uvh http://rpms.remirepo.net/enterprise/remi-release-7.rpm

Bật phiên bản PHP:

# yum-config-manager --enable remi-php73

Bây giờ, hãy cài đặt PHP 7.3 cùng với các mô-đun PHP bắt buộc:

# yum -y install php php-fpm php-common php-mysqlnd php-gd  php-json php-libxml php-mbstring php-xml php-curl php-fileinfo  php-mcrypt php-memcached php-imagick

Mở tệp cấu hình php-fpm:

# vi /etc/php-fpm.d/www.conf

Tìm người dùng và nhóm, thay đổi tham số thành nginx từ apache.

user = nginx

group = nginx

Tìm tham số lắng nghe và thay đổi nó như:

listen = /var/run/php-fpm/php-fpm.sock

Tìm các dòng thiết lập listening.owner và listening.group và bỏ ghi chú chúng. Đặt thành nginx:

listen.owner = nginx

listen.group = nginx

Sau khi bạn hoàn tất cấu hình, hãy lưu và thoát.

Bây giờ, hãy khởi động và kích hoạt bộ xử lý PHP:

# systemctl start php-fpm

# systemctl enable php-fpm

4. Cài đặt Let's Encrypt bằng Certbot

Cài đặt gói certbot-nginx:

# yum install certbot-nginx -y

Lấy chứng chỉ

# certbot --nginx -d yoursite.com -d www.yousite.com

5. Cài đặt Matomo Analytics

Điều hướng đến thư mục / var / www thư mục

# cd /var/www/

Tải xuống Matomo bản phát hành mới nhất bằng cách sử dụng lệnh wget và giải nén nó

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

Xóa tệp matomo.zip đã tải xuống

# rm -rf matomo.zip

Thay đổi quyền sở hữu của thư mục / var / www / matomo thành người dùng nginx

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

6. Hoàn thành Phân tích Matomo

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

Đã đến lúc bắt đầu với cài đặt trỏ và nhấp! Bấm tiếp "

Cách cài đặt Matomo trên CentOS 7 Nginx

Chúng tôi đã tìm hiểu thành công cách cài đặt Matomo trên CentOS 7 Nginx.