Matomo
Matomo,前身為 Piwik,是一個開源網絡分析工具,在 GNU 通用公共許可證 3 下獲得許可。該軟件是用 php 編寫的,可以通過網絡瀏覽器訪問。該項目的核心理念是私隱,因為當使用第三方網站分析提供商時,網站所有者會將用户的數據泄露給他們,以便他們將其出售給廣吿商。
通過在目標網站上加載一些JavaScript,可以用一個運行實例分析多個網站。
安裝[編輯 | 編輯原始碼]
安裝 matomoAUR 或 matomo-gitAUR 包。git 包已經為你配置了 php-fpm 守護程序。此外,它還為你下載並安裝了最新的 GeoIP 數據庫。默認情況下,Matomo 通過訪客設定的瀏覽器語言來猜測他們的位置,這不是可靠的地理位置信息。
配置[編輯 | 編輯原始碼]
php 配置[編輯 | 編輯原始碼]
需要正確配置 php 才能使 Matomo 工作。
首先,啟用 MySQL 支持,如 PHP#MySQL/MariaDB 中所述。通過編輯 /etc/php/php.ini
來做到這一點。通過刪除前面的分號取消註釋 ;extension=pdo_mysql
和 ;extension=mysqli
。
通常,註釋由前面的分號表示。
;extension=iconv
需要啟用,並且 ;extension=gd
對於 Matomo 是可選的。至少取消註釋 iconv。
允許 Matomo 訪問需要的文件[編輯 | 編輯原始碼]
由於7.4版以來對 php-fpm.service
的新限制,其中 ProtectSystem
被設置為阻止 Matomo 正常運行(無法安裝插件、更改配置等),因此需要手動設置訪問某些文件的權限。
下面的文件 /etc/systemd/system/php-fpm.service.d/override_matomo.conf
修復了這個問題,同時沒有展示出更多非必要的內容,如果不希望這樣做,仍然允許用户按照安裝清單中的描述修改 ACL。
[Service] ReadWritePaths = /usr/share/webapps/matomo/config ReadWritePaths = /usr/share/webapps/matomo/matomo.js ReadWritePaths = /usr/share/webapps/matomo/misc/user/ ReadWritePaths = /usr/share/webapps/matomo/plugins/
伺服器設置 (nginx)[編輯 | 編輯原始碼]
要啟用 php 網站,請安裝 php-fpm包 包和 start/enable php-fpm.service
(參見 Nginx#PHP implementation)。
通過修改/etc/nginx/nginx.conf
創建伺服器。在 "http "上下文中添加以下模板。或者,看看 matomo的GitHub 説明。
include /etc/nginx/mime.types; server { index index.php; listen 443 ssl; listen [::]:443 ssl; root /usr/share/webapps/matomo/; server_name matomo.example.com; location ~ ^/(\.git/|config/|core/|lang/|tmp/) { return 403; } location ~ \.php$ { try_files $uri =404; # FastCGI include fastcgi.conf; fastcgi_pass unix:/run/php-fpm/php-fpm.sock; fastcgi_index index.php; } location ~ \.(avi|css|eot|gif|htm|html|ico|jpg|js|json|mp3|mp4|ogg|png|svg|ttf|wav|woff|woff2)$ { try_files $uri =404; } location ~ ^/(libs/|misc/|node_modules/|plugins/|vendor/) { return 403; } }
要使用加密,您可以從 letsencrypt 獲取免費證書。請求並安裝證書後,通過將以下代碼添加到 "http" 或 "server" 上下文以使用它們:
include /etc/letsencrypt/options-ssl-nginx.conf; ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; ssl_certificate_key /etc/letsencrypt/live/subdomain.domain.me/privkey.pem; ssl_certificate /etc/letsencrypt/live/subdomain.domain.me/fullchain.pem;
通過啟動/啟用 nginx.service
運行 nginx 伺服器。
mariadb.service
以及 php-fpm.service
是必須的。最後步驟[編輯 | 編輯原始碼]
所有主要設置都完成了。在你的瀏覽器中調用你的 Matomo 網站,並完成次要安裝指南——不外乎是檢查所需的一切是否可用,並設置和編寫你的配置文件。