Matomoはオープンソースのウェブサイト統計ツールで、Piwikとして知られていた時代もありました。このツールは訪問者の詳細なログやプロフェッショナルなレポートを生成できます。例えば、地理ベースのグローバルヒートマップ、リアルタイムの訪問状況、クリック分析、ページ遷移率、リファラ情報、ブラウザやデバイス情報、キーワード分析などが可能です。
実装手順
まず、以下のディレクトリに移動します。
cd /www/server/panel/data/compose/matomo
Dockerを使用してMatomoを起動します。
docker-compose up
データベースの設定を行います。
- データベースサーバー: 「mariadb」を入力
- ログインユーザー名: 「root」を入力
- パスワード: 空欄のまま
- データベース名: 「matomodb」を入力
トラッキングコードの例
以下は、トラッキング用のJavaScriptコードです。
<!-- Matomo トラッキングコード -->
<script>
var tracker = window.tracker = window.tracker || [];
tracker.push(['trackPageView']);
tracker.push(['enableLinkTracking']);
(function() {
var url = "//yourdomain.com/";
tracker.push(['setTrackerUrl', url + 'matomo.php']);
tracker.push(['setSiteId', '1']);
var d = document, s = d.createElement('script'), f = d.getElementsByTagName('script')[0];
s.async = true; s.src = url + 'matomo.js'; f.parentNode.insertBefore(s, f);
})();
</script>
<noscript><p><img src="//yourdomain.com/matomo.php?idsite=1&rec=1" style="border:0;" alt="" /></p></noscript>
<!-- トラッキングコード終了 -->
Firewallのポート8597を開く必要があります。
セキュリティエラー対策
HTTPS接続が必須の場合、次のようなエラーが発生することがあります。
Error: The form security failed because of invalid origin. If you previously connected using HTTPS, please ensure you are connecting over a secure (SSL/TLS) connection and try again.
これを解決するには、config.ini.phpに次の行を追加します。
; プロキシ環境での設定
[General]
assume_secure_protocol = 1
; 標準的なプロキシを使用している場合、以下の行をアンコメント
proxy_client_headers[] = HTTP_X_FORWARDED_FOR
proxy_host_headers[] = HTTP_X_FORWARDED_HOST
UI言語の設定
Matomoにログインし、右上のギアアイコンをクリックして設定画面に入ります。「Personal」→「Settings」で言語を日本語に変更できます。
IPアドレス関連の問題
代理サーバー経由の場合、正しいIPアドレスが取得できないことがあります。この場合は上記のプロキシ設定を有効にしてください。
高度な機能
さらに詳しいIP情報が必要な場合は、IP Geolocationデータベースを設定することで改善できます。
- IP Geolocationデータベースの導入
- Matomoプラグインを使用した地域分析精度の向上