Tartalom
- oldal: Alapfeltételek áttekintése és a tárhely előkészítése a Matomo számára
- oldal: Matomo letöltése és telepítése
- oldal: Követőkódok elhelyezése WordPress rendszerű oldalakon
- oldal: Követőkódok elhelyezése Drupal rendszerű oldalakon
- oldal: Követőkódok elhelyezése és testreszabása egyedi fejlesztésű oldalakon
- oldal: A telepítés utáni fontos beállítások elvégzése
- oldal: GeoIP 2 (PHP) alapú geolokációs rendszer beüzemelése
- oldal: Matomo teljes rendszer átállítása PHP-FPM alapú szerver API működésre
A 7. oldal tartalma
Folytatás
Az előző oldalon elvégeztük a Matomo (Piwik) rendszer telepítése utáni fontos beállításokat, itt még folytatjuk a geolokációs eszközök telepítésével és beállításával, hogy statisztikánkban láthassuk hogy mely városokból érkeznek látogatóink.
További szükséges beállítások
Geolokáció beállítása
Utolsó feladatunk, a geolokáció beállítása maradt hátra. Ahogyan a Matomo a Rendszerellenőrzés oldalán is javasolja, a PHP alapú GeoIP 2 megoldást fogjuk használni. Több módszer is létezik (pl. Apache modul telepítése), de ezt a legegyszerűbb feltelepíteni.
A fizetős és ingyenes változatban is elérhető geolokációs adatbázisokat a MaxMind biztosítja. Használatához szükségünk lesz egy libmaxminddb nevű C fügvénykönyvtárra, és egy MaxMind-DB-Reader-php nevű PHP bővítményre.
Forráskód lefordításának alapfeltételei
Az itt következő részek forráskód lefordításokat tartalmaznak, amikhez a gcc és a make parancsok szükségesek. Ezeket pedig a gcc és a build-essential csomagok tartalmazzák. Az általam készített szerverek közül egyedül a Debian 8 (Jessie) LAMP szerver nem tartalmazza ezeket, így ha ilyen szerverre telepítjük a Matomo rendszert, akkor – a csomagtárak frissítését követően – telepítsük őket az alábbi módon:
apt-get update
apt-get -y upgrade
apt-get -y install gcc build-essential
Ha más rendszert használunk, aminél nem vagyunk biztosak ezen csomagok meglétében, akkor ellenőrizhetjük az alábbi grep paranccsal:
dpkg -l | grep "gcc\|build-essential"
Ha itt felsorolja a gcc és a build-essential csomagot is, akkor ugorhatunk is a következő részre. Ha viszont nincsenek fent, akkor telepítsük őket a fentebbi parancsokkal.
A szervereket ellenőriztem, az esetlegesen hiányzó csomagok telepítése után már működik a fordítás mindenhol.
Libmaxminddb függvénykönyvtár telepítése
A libmaxminddb függvénykönyvtár segítségével a rendszerünk képes lesz a MaxMind adatbázis fájljainak olvasására. A függvénykönyvtár forráskódját a GitHub oldaláról tudjuk letölteni. Közvetlen git klónozással is hozzá lehetne jutni, de egy élő Git repóban lévő forrás használata során előjöhetnek függőségi problémák, amiknél rögtönözni kell, így nincs rájuk pontos recept. Hogy ezt elkerülhessük, inkább a kész tarball forráscsomag letöltését választjuk. Ehhez először az alábbi linken keressük ki a legfrissebb verziót a tetején:
https://github.com/maxmind/libmaxminddb/releases
Majd a leírás alatti libmaxminddb-x.y.z.tar.gz fájl link címét másoljuk ki. Nálam éppen ez:
https://github.com/maxmind/libmaxminddb/releases/download/1.3.2/libmaxminddb-1.3.2.tar.gz
Majd root-ként belépve folytassuk a műveletsort, kezdve a /tmp könyvtárba lépéssel és a tarball letöltésével:
cd /tmp
wget https://github.com/maxmind/libmaxminddb/releases/download/1.3.2/libmaxminddb-1.3.2.tar.gz
Csomagoljuk ki a letöltött archív fájlt a tar paranccsal, és utána lépjünk be a létrejött könyvtárba:
tar -xvzf libmaxminddb-1.3.2.tar.gz
cd libmaxminddb-1.3.2
Ezután végezzük el a forráskód lefordítását az alábbi parancsok végrehajtásával:
./configure
make
make check
Az utolsó paranccsal ellenőrizhetjük a fordítás hibamentességét. Ha minden rendben, akkor ilyen kimenetet kell hogy lássunk:
Végül telepítsük a lefordított csomagot, majd futtassuk az ldconfig parancsot a cache újraépítéséhez:
make install
ldconfig
Ezzel a libmaxminddb C függvénykönyvtár fordításával és telepítésével elkészültünk.
MaxMind-DB-Reader-php PHP bővítmény telepítése
PHP bővítmények telepítéséhez szükségünk lesz a phpize parancsra, amit a PHP rendszerünk fejlesztői csomagjában találhatunk. Először ellenőrizzük a rendszerük (alapértelmezett) PHP verzióját:
php --version
A verziónk alapján töltsük le a megfelelő PHP development csomagot:
- PHP 5 esetén: php5-dev
- PHP 7.0.x esetén: php7.0-dev
- PHP 7.1.x esetén: php7.1-dev
- PHP 7.2.x esetén: php7.2-dev
- stb...
Nálam ezen a Debian 9 (Stretch) tökéletes szerveren a 7.0-ás PHP az alapértelmezett, tehát én most ezt használom:
apt-get -y install php7.0-dev
Ezután lépjünk a /tmp könyvtárba és töltsük le a MaxMind-DB-Reader-php PHP bővítmény zip változatát a GitHub oldaláról:
cd /tmp
wget https://github.com/maxmind/MaxMind-DB-Reader-php/archive/master.zip
Csomagoljuk ki, és lépjünk be a létrejött könyvtár alatti ext/ alkönyvtárba:
unzip master.zip
cd MaxMind-DB-Reader-php-master/ext
Itt futtassuk a phpize parancsot (root-ként):
phpize
Normál esetben ad egy hasonló kimenetet (PHP verziónktól függően):
Configuring for: PHP Api Version: 20151012 Zend Module Api No: 20151012 Zend Extension Api No: 320151012
Ezután konfiguráljuk, fordítsuk le a forrást, majd telepítsük (szintén root-ként):
./configure
make
make install
A végén ad egy ilyen kimenetet:
Installing shared extensions: /usr/lib/php/20151012/
Nyissuk meg a php.ini fájlt (PHP 7.x esetén: /etc/php/7.x/apache2/php.ini PHP5 esetén pedig: /etc/php5/apache2/php.ini):
nano /etc/php/7.0/apache2/php.ini
És adjuk a végéhez a következő sort:
extension=maxminddb.so
Mentsük le, és indítsuk újra az Apache-ot:
systemctl restart apache2.service
Matomo GeoIP 2 bővítmény aktiválása
Ha idáig eljutottunk, akkor menjünk vissza a Matomo felületére, majd ott kattintsunk a jobb felső fogaskerékre, és a bal oldali menüben lépjünk a System csoport Geolocation opciójára:
Itt láthatjuk, hogy az alapértelmezett mód az aktív, és az alatta lévő GeoIP 2 (Php) rész még szürke, és alatta van hogy "Nem telepített". Itt görgessünk le a lap aljára, ahol egy "GeoIP Databases" című panelt találunk:
Itt ha nem vásároltuk meg a fizetős adatbázist, hanem az ingyenest szeretnénk használni, akkor kattintsunk a bal oldali zöld gombra, ekkor automatikusan letölti a MaxMind oldaláról az ingyenes geolokációs adatbázist.
Ha végigment a csík, akkor letöltésre kerül egy 61 Mb-os GeoLite2-City.mmdb nevű fájl, amely az alábbi könyvtárba került:
<matomo telepítési könyvtára>/misc/
Ezzel természetesen már nincs dolgunk, de azért leírom, hátha mégis szükség lesz rá.
Ezután visszakerülünk ugyanennek az oldalnak a felső részére, ahol már zölden jelzi a GeoIP 2 (Php) résznél hogy telepítve:
Itt válasszuk is ki a GeoIP 2 (Php) opciót, majd ennek a panelnek az alján lévő mentés gombbal mentsük a beállítást.
Ha most ugyanitt legörgetünk ismét a lap aljára, akkor láthatjuk az automatikus frissítési részeket, ahol már be van állítva a letöltési URL cím és hogy havonta töltse le a Matomo a frissebb változatot (kb havonta frissül egyébként).
Ezzel már nincs dolgunk, készen is vagyunk a geolokációs beállításokkal.
Még ne menjünk sehova, mert az utolsó oldalon átállítjuk az egész rendszert a PHP-FPM alapú működésre.
- Enciklopédia - Matomo (Piwik) webanalitika
- Hogyan frissítsük Matomo (korábban Piwik) webanalitikai rendszerünket a 4.x verzióra
- Matomo.org
- Matomo.org - How do I install the PHP extension for GeoiIP 2?
- Mit tegyünk, ha a Matomo webanalitikai rendszerünk "AH01630: client denied by server configuration" típusú Apache hibákat generál, ami miatt a Fail2Ban letiltja az IP-címünket?
- Szerver monitorozása a Munin segítségével Debian 9 (Stretch) és Debian 10 (Buster) rendszereken
Lapozó
- A hozzászóláshoz regisztráció és bejelentkezés szükséges
- 89 megtekintés