Schlagwort-Archive: The Webalizer

WordPress mit The Webalizer auswerten

Die logs auf diesem Server lasse ich durch den Webalizer auswerten. Ohne Permalinks gibt die Auswertung jedoch keine Übersicht über die abgerufenen Artikel. Auch führen die internen Dateien der Style Sheets und Java Scripts die Statistiken regelmäßig an, da sie in fast jeder Seite eingebunden sind. Um dies zu ändern habe ich Permalinks der Form /YYYY/MM/DD/Titel/ eingeführt. Dies geht mit WordPress recht einfach, wenn man in der Definition des VHost alles richtig gemacht hat. Auch wenn WordPress meldet, dass es die .htaccess erfolgreich geschrieben hat, bedeutet dies nicht, dass die .htaccess auch angezogen wird. Hier ist an den richtigen Stellen darauf zu achten, das AllowOverride auf mindestens FileInfo steht. Ist dies erledigt, gilt es die nicht interessierenden Dateien im Report zu verbergen. Dies erfolgt in der webalizer Konfigurationsdatei mit HideURL. Jeder verfolgt mit einem Report seinen Zweck. Wer wissen will, was den Traffic auf dem Rechner verursacht, braucht einen anderen Report als der, der wissen möchte, welche Artikel gelesen werden. Da mich die Frage bewegt, lohnt sich das Schreiben überhaupt. Habe ich den Report so beschränkt, dass hauptsächlich Artikel angezeigt werden. Dazu noch die Aufrufe einzelner /topics/, /tags/ oder /author/. Daraus ergab sich nach einigen Versuchen die folgende Auswahl an HideURL Befehlen:


...
HideURL *.js
HideURL *.css
HideURL /favicon.ico
HideURL /readme.html
HideURL /robots.txt
HideURL /feed/
HideURL /comments/feed/
HideURL /wp-admin/*
HideURL /wp-includes/*
HideURL /wp-login.php
HideURL /wp-cron.php
HideURL /xmlrpc.php
HideURL *.gif
HideURL *.GIF
HideURL *.jpg
HideURL *.JPG
HideURL *.png
HideURL *.PNG
HideURL *.ra
...

The Webalizer – Mehrere virtuelle Server verwalten und auswerten

Gestern habe ich recht spontan über die Absicherung der Statistiken des Webalizer geschrieben. Das Meiste lässt sich auf andere Programme ohne Probleme übertragen. Heute soll es um die Einrichtung mehrerer virtueller Server (VServer) unter Apache und die Auswertung der Log-Dateien gehen.

Apache Konfigurationsdateien

Liegen viele Virtuelle Server auf einem Web-Server, gilt es den Überblick durch Ordnung zu wahren. Auch wenn alles im Apache in einer Datei beschreibbar ist, empfiehlt es sich, für jeden Server eine eigene Konfigurationsdatei zu erstellen und mit dem Namen des Servers zu versehen. Da mehre Domains auf meinem Server liegen, nehme den Fully Qualified Domain Name (FQDN) des Servers mit in den Dateinamen. Die Definition eines Servers steht somit in der Datei:

/etc/apache2/vhosts.d/<servername>.conf

und ist meist recht spartanisch. Siehe dazu den vorherigen Artikel.

Apache Log-Dateien

In vielen Fällen schreibt der Apache alle Zugriffe in ein einziges Access log (/var/log/apache2/access_log unter OpenSuSE). Das Format der Log-Einträge kann frei definiert werden. Die Default-Einstellung protokolliert nicht mit, auf welchen VServer zugegriffen wurde. Mit einer Erweiterung der Log-Einträge um die ServerNamen kommt der Webalizer nicht zurecht. Die Konsequenz ist, dass für jeden VServer eine eigene Log-Datei angelegt werden muss. Für diese Log-Dateien verwende ich folgende Namenskonvention:

/var/log/apache2/vhosts/<servername>/access_log

Das Rotieren der Logs der VServer wird durch eine Datei /etc/logrotate.d/apache2.vserver gesteuert. Hier erzeuge ich nur eine Datei für alle Server.

(Einzelne Log-Dateien haben auch ihre Vorzüge.)

Es empfiehlt sich vor einem Rotieren des Logs dieses mit dem Webalizer auszuwerten, da sonst Einträge verloren gehen. Da eine Webalizer Auswertung recht lange dauern kann, sollte der Web-Server nicht gestoppt werden. Dadurch können einige Einträge für die Auswertung verloren gehen, aber dies sollte zu verschmerzen sein.

Webalizer Output Verzeichnis

Der Weebalizer erzeugt seien Report in einem Verzeichnis. Dort werden auch historische Daten gespeichert, um nicht laufend alle Log-Einträge auswerten zu müssen. Einmal zählen reicht. Um die Zugriffe leichter zu kontrollieren lege ich die Statistiken auf einem eigenen VServer ab, der unter

/srv/www/vhosts/<servername>/

gespeichert wird. Unterhalb des VServer-DocumentRoot lege ich für jeden VServer wieder ein eigenes Verzeichnis mit dem Servernamen ab. Z.B.:

/srv/www/vhosts/webalizer.excample.com/wiki.excample.com

Das spartanische php-Script index.php in diesem Verzeichnis liest die Unterverzeichnisse und erzeugt eine Übersichtsseite Seite mit Links zu den einzelnen Statistiken.

Webalizer Konfigurationsdateien

Nun gilt es die einzelnen Statistiken für die VServer zu steuern. Diese Webalizer Konfigurationsdateien werden unter

/etc/webalizer.d/<servername>.conf

abgelegt.

Konfigurationsscript

Um den alle VServer für den Webalizer einzurichten, habe ich ein kleines Script geschrieben, das die Verzeichnisse erzeugt und die Konfigurationsdateien anpasst bzw. fehlende erzeugt. Voraussetzung ist, dass alle VServer unter /etc/apache2/vhosts.d/ definiert sind. Das Script liest alle Konfigurationsdateien des Verzeichnisses und sucht nach Zeilen „ServerName …“ (wichtig Groß- und Kleinschreibung beachten) und erzeugt mit diesem Servernamen die Einträge. Der Haupt-Domain-Name wird aus dem ServerName Eintrag der default-server.conf genommen.

Das Script findet sich hier: download

Webalizer ausführen

Um den Webalizer regelmäßig auszuführen, startet Cron folgendes Mini-Script:

#!/bin/sh

for CONF in /etc/webalizer.d/*.conf
do
  webalizer -c "$CONF"
done

Damit soll es für heute gut sein. Genug für diese Nacht.

The Webalizer – Statistiken absichern

Wer einen Web-Server betreibt, der möchte – so wie ich – wissen, was so auf seinem Server vor sich geht. Welche Seiten werden besucht, wie viele, von wem, usw. Da bietet sich The Welalizer als Tool für die Auswertung der Access Logs an. Die Installation ist einfach, die Konfiguration auch. Dazu aber etwas in einem späteren Artikel. Hier möchte ich etwas über die Absicherung der Statistiken schreiben, weil mir auffiel, dass viele Administratoren die Statistiken nicht vor Zugriffen schützen.

The Webalizer – Statistiken absichern weiterlesen