AWStats
Wofür brauche ich das?
Dieses Howto beschäftigt sich mit der Einrichtung des Open-Source Webstatistik-Werkzeugs AWStats. Mit diesem Tool kann man Webserver-Logfiles grafisch aufbereiten und die Ergebnisse übersichtlich anzeigen lassen. Man kann so Statistiken über Zugriffe, Besucherzeiten und vieles mehr beobachten.
Auf der AWStats-Website ist nur beschrieben, wie man das Tool mit root-Rechten installieren kann. Hier möchte ich daher zeigen, wie dies mit jedem beliebigen Webserver-Account funktioniert, der die folgenden Vorraussetzungen besitzt:
Vorraussetzungen
- Webserver ;-)
- Lesezugriff auf das Webserver-Logfile
- Perl-Skripte müssen ausführbar sein
Installation
-
Zuerst wird die als letzte stabil markierte AWStats-Version je nach Belieben als .zip- oder .tgz-Archiv von der AWStats Website heruntergeladen.
-
Das Archiv wird lokal entpackt. Es enthält ein Verzeichnis wwwroot.
Die übrigen Verzeichnisse werden für die Installation nicht benötigt. -
Der Inhalt des Verzeichnisses wwwroot wird in das eigene Webserver-Indexverzeichnis per FTP oder besser per SSH. hochgeladen.
Dabei ist darauf zu achten, dass der Inhalt von wwwroot/cgi-bin auch wirklich in das korrekte Verzeichnis gelangt. Es kann sein, dass dieses Verzeichnis auf dem Webserver nur cgi heißt. In diesem Fall muss der Inhalt des hochgeladenen cgi-bin-Ordners in das echte CGI-Verzeichnis verschoben werden der leere cgi-bin-Ordner kann anschließend wieder entfernt werden.Beim Hochladen mit FTP sollte darauf geachtet werden, dass die Daten im ASCII-Modus hochgeladen werden und nicht im Binär-Modus. Ansonsten kann es zu Problemen beim Ausführen der CGIs kommen.
Nach dem Hochladen befinden sich also im Webserver-Indexverzeichnis folgende Verzeichnisse:- classes
- icon
- css
- js
- cgi-bin bzw. falls das CGI-Verzeichnis auf dem Webserver anders heißt befindet sich der Inhalt von cgi-bin im entsprechenden Verzeichnis
-
Im Webverzeichnis muss nun noch ein Verzeichnis erstellt werden, in welches AWStats seine Logfiles schreiben kann. AWStats generiert nämlich aus den Webserver-Logfiles eigene Statistikdateien.
Wir nennen das Verzeichnis awstats_log.Bei Web-Accounts bei denen der Benutzer ein eigenes Webserver-Indexverzeichnis in seinem home-Verzeichnis hat, läuft der Webserver unter einem anderen Benutzer, als die Dateien des Benutzers. Damit der Webserver in das eben erstellte Logverzeichnis schreiben kann, muss es für jeden beschreibbar sein. Das hat den Nachteil, dass ein böser Benutzer diesen Logfiles-Ordner und seine Inhalte löschen könnte. Der Ordner muss die Berechtigungen r w x für Benutzer, Gruppe und die ganze Welt (777) erhalten.
-
Im CGI-Verzeichnis befindet sich nun bereits eine Konfigurationsdatei awstats.model.conf. Diese wird so umbenannt, dass für model der Servername geschrieben wird.
Für http://www.tyranus.de z.B. wird die Konfigurationsdatei nach awstats.www.tyranus.de.conf umbenannt.
-
Anschließend muss die Konfigurationsdatei mit einem Texteditor angepasst werden. Folgende Einstellungen sind wichtig:
- LogFile= Hier muss der absolute Pfad zum Webserver-Logfile angegeben werden. Beim Apache-Webserver heißt diese Datei normalerweise /var/log/http/access_log. Aber es gibt auch dort Unterschiede zwischen verschiedenen Betriebssystemen.
- LogFormat= Standardmäßig wird hier das Apache-combined-Format benutzt, da es die meisten verwertbaren Informationen enthält. Wenn Sie nicht wissen, welche Format die Logfiles Ihres Webservers verwenden, testen Sie es aus. Im schlimmsten Fall erhalten Sie eine Fehlermeldung, dass das Logformat nicht mit dem von Ihnen angegebenen übereinstimmt.
- SiteDomain=Hier geben Sie den Domainnamen Ihrer Website ein. Sie brauchen keine Unterverzeichnisse mit anzugeben, da Ihr Webverzeichnis mit einer anderen Option gefiltert wird.
- DirData= Hier muss nun das Verzeichnis angegeben werden, welches Sie zuvor angelegt haben und in dem AWStats seine Logfiles speichert.
Geben Sie hier den absoluten Pfad für dieses Verzeichnis an. z.B.: /home/tim/public_html/awstats_log.
- DirCgi= Das CGI-Verzeichnis. Geben Sie das Verzeichnis an, welches Ihrem CGI-Verzeichnis entspricht und in das Sie den inhalt des cgi-bin-Verzeichnisses aus dem AWStats-Archiv kopiert haben. Der Standardwert steht auf /cgi-bin.
- DirIcons=Sollten später beim Aufruf keine Bilder auf Ihrer AWStats-Seite angezeigt werden, können Sie mit diesem Schalter den Standort des Icons-Verzeichnisses angeben. Bei manchen Webservern ist dies notwendig.
Ich musste einmal DirIcons="../icon" angeben, weil der Webserver so konfiguriert war, dass er das cgi-bin- Verzeichnis als root-Verzeichnis angesah.
- AllowToUpdateStatsFromBrowser Falls Sie keinen Konsolenzugriff auf Ihren Webserver haben und keine Cronjobs erstellen können, sollten Sie hier eine 1 eintragen. Auf diese weise ist es möglich, den Logstatus über eine Schaltfläche in der AWStats-Umgebung selbst zu aktualisieren.
- OnlyFiles= Diese Option ist wichtig, wenn Sie nicht der einzige Benutzer sind, der in die von Ihnen angegbene Webserver-Logdatei loggt. In diesem Fall müssen Sie hier festlegen, dass AWStats nur Ihre Daten loggen soll. Das geschieht mit einem Regulären Ausdruck. REGEX[~tim\/.*] würde bspw. nur Seitenaufruffe mitloggen, die in der URL ~tim/ enthalten. Das ist sehr nützlich, wenn Sie ihr Webverzeichnis in Ihrem Benutzerverzeichnis haben, da Sie es in diesem Fall mit Anhängen von ~name an die URL erreichen.
Sollten Sie Zugriff auf Cronjobs besitzen, nutzen Sie lieber diese. In dem Fall kann die Online-Updateoption mit 0 abgeschaltet werden.
Ein Webordner im eigenen home-Verzeichnis wird so aufgerufen:
tyranus.de/~tim -
AWStats kann nun über das awstats.pl-Skript in Ihrem CGI-Verzeichnis aufgerufen werden.


