ウェブアクセス解析MatomoのGeoLite2利用

MySQLを8.0に更新したらウェブアクセス解析のMatomo (旧Piwik)が全く動かなくなって開発版を入れ直したが、昔とはGeoIP周りが変わっているみたい。GeoIP2/GeoLite2というのが記憶にない作業のようなのでこの記事を備忘録とする。(MySQL8.0でMatomoが動かない問題は5月7日現在、開発版とβ版のMatomo 3.5.0-b3, Matomo 3.5.0-rc1で解決済み)

Maxmindのウェブサイト
MaxmindのウェブサイトからGeoLite2-Cityのバイナリファイルをダウンロードする。

以下の手順はMatomoを/usr/local/www/matomoにインストールしているとし、apache/nginxの実行ユーザー名/グループ名がwwwであるとする。行頭が#は管理者として、%は一般ユーザーで実行とする。

# cd /usr/ports/net/pecl-geoip
# make install clean
# service php-fpm restart  #PHPをphp-fpmで動かしている場合の再起動
% wget http://geolite.maxmind.com/download/geoip/database/GeoLite2-City.tar.gz
% tar zxvf GeoLite2-City.tar.gz
# mv GeoLite2-City.mmdb /usr/local/www/matomo/misc/
# chown www:www /usr/local/www/matomo/misc/GeoLite2-City.mmdb
% ls -l /usr/local/www/matomo/misc | grep Geo
-rw-r--r--  1 www   www  20539238  5月  4 12:59 GeoIPCity.dat
-rw-r--r--  1 www   www  56482235  5月  7 21:15 GeoLite2-City.mmdb

4行目のwgetは上の画像のページから既に取得済みなら当然不要。
GeoIPCity.datはGeoLiteCity.datと同一というかMatomoのWebUIでGeoLiteCityデータをインストールしたらGeoLiteCity.datがリネームされて置かれたもの。このデータは非常にアバウトなのでビジターがどの国から来たか程度しかわからない。GeoLite2-City.mmdbだとファイルサイズが2倍以上の甲斐があってかほんの少しだけ詳しくなる。

Matomoのジオロケーション設定
Matomoの設定メニューから「ジオロケーション」を選択する。2番目の「GeoIP 2 (Php)」が「インストール済み」になっていることを確認してそのラジオボタンを押す。左下の「保存」を押す。
右側の灰色部分の「このプロバイダーによると、あなたの現在地は:」の下に座標と都市名が表示されたら成功。(その情報が正確かは関係ない)

Matomoのビジターログを見る
ジオロケーション設定変更以降に記録されるビジターの情報(上の画像では左列)を見ると日本の都道府県名が表示されている。ただし、全てではなく一部は「日本」という国名だけ。

簡単だけどイマイチわかりにくいのでもう少し工夫して欲しいところ。


コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です