Werbehinweise

Werbung

Apache/Xitami

Wer einen Webserver laufen hat möchte evtl. den Traffic ausgewertet haben und damit mehr über die Besucher seiner Seiten bzw. seines Servers erfahren. Für Apache gibt es eine Reihe von Programmen zur Logfile-Auswertung, ich will mit awstats ein Freeware Script vorstellen mit dem sich übersichtiliche, ansprechend aussehende und aussagekräftige Statistiken erzeugen lassen.

Ich habe diese kleine Anleitung in fünf Teile aufgesplittet. Diese Step-by-Step-Anleitung sollte eigentlich problemlos zu verstehen sein. Für Fehlermeldungen, kleine Ergänzungen oder einfach nur ein Feedback würde ich mich freuen.

Der Anleitung wurden nachträglich die Angaben für eine Verwendung mit Xitami eingefügt. Bei Absätzen, denen ein »Apache« oder »Xitami« in rot und kursiv vorausgeht werden unterschiedliche Angaben für die unterschiedlichen Webserver gemacht. Bitte je nach verwendetem Webserver den Anleitung des richtigen Absatzes folgen.

awstats für Apache/Xitami unter Windows 2000 Professional

Infos zu Apache gibt's ja schon auf meiner Seite: Mehr über Apache/Xitami als Webserver.
Ich gehe von einer vollständigen und lauffähigen Installation eines Apache für WIN32 aus. Ich habe als Basis dieser Anleitung einen Apache 1.3.22 als Service unter Windows 2000 Professional am laufen gehabt.

Für die Xitami-User gilt dies sozusagen analog, wenn der Xitami läuft ist alles soweit vorbereitet.

awstats – was machen sie, wie sehen sie aus?

Erstmal sollte man sich von der awstats-Homepage die neueste Version herunterladen.

Ich habe die im Oktober 2001 akutelle Version 3.1 im Einsatz.
Das Perlscript awstats.pl durchforstet die Logfiles vom Apache und gibt sie sowohl tabellarisch als auch grafisch aus. Dazu müssen die awstats natürlich erst noch konfiguriert werden. Dazu später mehr.
Um lange Ladezeiten zu vermeiden habe ich einfach mal eine Auswertung meines Apacheservers in Form von drei .GIFs hier zur Ansicht parat gestellt. Da in einer HTML-Version die Links sowieso nicht funktionieren würden halte ich es für sinnlos, eine HTML-Version online zu stellen.

   

Perl – wo bekomme ich Perl für WIN32 her?

Na, bei www.activestate.com . Dort einfach das aktuelle WIN32-Installationsfile von ActivePerl herunterladen und installieren. Ich habe als Pfad d:/perl gewählt, dieser Pfad kann bzw. wird vermutlich bei jedem anders sein.

Der Pfad der Perl-Installation ist deshalb so wichtig, da später das awstats.pl-Script einen Eintrag erhält, mit dem der Pfad zur perl.exe »mitgeteilt« wird.

awstats »installieren«

Das awstats-Script kommt als .zip gepackt. Eine »Doppelklick-Installation« ist also nicht möglich/nötig, die enthaltenen Dateien müssen von Hand in die entsprechenden Verzeichnisse kopiert werden.

Apache:
Das eigentliche .pl-Script kommt – eine Standard-Apacheinstallation vorausgesetzt – in das CGI-BIN im /apache/-Verzeichnis. NICHT in ein CGI-BIN unterhalb des HTDOCS-Verzeichnisses!

Xitami:
Das Script kommt in das CGI-Bin Verzeichnis direkt im Xitami Verzeichnis /Xitami/CGI-Bin.

Andernfalls würde der Aufruf von »http://rechnername/cgi-bin/awstats.pl« ins Leere gehen. Ebenfalls in dieses CGI-BIN gehört das Unterverzeichnis LANG aus dem awstats-ZIP-Archiv.

Apache:
Jetzt gibt's noch ein ICON-Verzeichnis im awstats-ZIP-Archiv. Dieses kommt in das HTDOCS-Verzeichnis. Damit kann's ein kleines Problem geben: Im Apache wird bereits ein Alias für ein »http://rechnername/icon« standardmäßig angelegt. Entweder man kopiert nun alle Daten aus dem awstats-ZIP-Archiv in dieses Apache-ICON-Verzeichnis (zu finden als »apache/icons/«), oder man legt sich ein neues Verzeichnis mit anderen Namen im HTDOCS-Verzeichnis an. Beispielsweise »awstatsicons«. Dies muß dann allerdings im Konfigurationsfile der awstats angegeben werden. Später dazu mehr.

Xitami:
Das ICON-Verzeichnis kommt in das Wurzelverzeichnis eures Webseiten-Ordners, z.B. /Xitami/webpages/"Name des Ordners". Ein Beispiel hierfür: e:\Programme\Xitami\webpages\homepage\icon.

awstats konfigurieren

Apache:Der Webserver läuft, Perl und das awstats-Script sind installiert – jetzt wird es Zeit für die Konfiguration von den awstats.
Der erste Schritt hat aber nichts mit den awstats zu tun, wir müssen uns erst nochmal dem Apache widmen:
In der httpd.conf wird mit einer Variable das Format der Logfiles gewählt. Standardmäßig werden keine Browserinformationen bzw. die Version vom Betriebssystem mitgeloggt. Da diese mitunter auch interessant sind sollte man die Art des mitloggens verändern;

LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" common

lautet die korrekte Zeile für die Logfiles. Diese Definition einfach unterhalb (!) der bereits vorhandenen Definitionen für LogFormat schreiben, den Apache neu starten und fertig. Ab jetzt wird richtig mitgeloggt.

Xitami:
Per Webinterface auf den Xitami Webserver und einloggen. Dann über »Configuration« und »Logging« (rechts oben), zu den Einstellungen der Log-Files. HTTP access log anklicken, und dann bei »Log file format« Xitami Extended LML auswählen. Wir wollen ja schliesslich alles mitloggen.
Dann links oben so lange auf Save klicken (zwei mal) bis ihr wieder auf der Xitami Administration Hauptseite seid.

Im CGI-BIN befinden sich jetzt zwei neue Dateien. Eine davon ist awstats.model.conf. Diese muß man nun kopieren, und zwar zu awstats.conf. In dieser awstats.conf werden alle relevanten Optionen und Settings für die awstats angegeben.

Der erste Eintrag, der zu ändern ist, ist: »LogFile="/var/log/httpd/mylog.log"«. Dort muß man den wirklichen Pfad zu dem zu bearbeitenden Logfile angeben. Bei meinem Apache lautete dieser beispielsweise: »LogFile="D:/Apache/logs/access.log"«.

Beim Xitami könnte er beispielsweise »LogFile="E:/Programme/Xitami/logs/access.log"« lauten.

Sollte man (wie ich es oben vorgeschlagen habe) den Pfad zu den von awstats verwendeten Bildern verändert haben muß man »DirIcons="/icon"« ebenfalls verändern. Bei mir lautete die korrekte Zeile dann: »DirIcons="/awstatsicons"«. Der Pfad bezieht sich auf die Root der HTDOCS.

Ein Stück weiter unten kann man die »Grundsprache« der awstats ändern. »Lang="en"« wird einfach auf »Lang="de"« geändert, schon werden die Stats beim Starten in Deutsch präsentiert.

Damit das Perl-Script die IPs aufschlüsselt, also eine DNS-Abfrage macht, muß DNSLookup auf 1 gesetzt werden. Ansonsten stehen halt nur die IPs in den Stats, nicht die Rechnernamen. Außerdem kann man - da die IPs ja nicht aufgeschlüsselt werden - nicht die Länderauswertung verwenden.

Damit wären die Settings in der awstats.conf für's Erste abgeschlossen. Damit das Perl-Script richtig ausgeführt werden kann, muß noch die erste Zeile im Script selbst angepasst werden. Für mein Win32-System lautete die Zeile #!d:/perl/bin/perl. Wichtig: Vor dem Editieren den als Standard gesetzten Schreibschutz (Attribut) entfernen.

So, die Konfiguration ist abgeschlossen, leider wird man bei einem Aufruf des Scriptes jetzt erstmal enttäuscht werden: Da stehen ja noch gar keine Werte drin!
Logisch, schließlich zeigt das Script im Browser nur Daten an, das eigentliche Parsen muß man entweder von Hand (etwas ungeschickt) oder mit einer crontab bzw. den »geplanten Tasks« (Einstellungen > Systemsteuerung > Geplante Tasks) vornehmen (lassen).
Der korrekte Aufruf für das Script lautet dann:
awstats.pl -config=awstats -update.

Wenn man das Script von einem anderen Rechner via Browser ausführen will:

http://rechnername/cgi-bin/awstats.pl?config=awstats&update=1

Wobei der Übergabewert von config in beiden Fällen natürlich differrieren kann – je nach Konfiguration.

Wichtig: Dies hat bei mir nur mit einem W2K-Apache funktioniert, unter Linux (dort habe ich es auch installiert) geht es aufgrund der Rechte des Scriptes standardmäßig nicht. Dort habe ich einfach einen Eintrag bei den Cronjobs gemacht, jetzt werden stündlich die Stats aktualisiert – auch wenn's nicht wirklich so viel Traffic auf meinem kleinen Apache gibt.

Nach dem (fehlerfreien) Ablaufen des Scriptes sollte jetzt über den oben erwähnten Link alle bisherigen Zugriffe auf den Webserver sowohl in Form von Tabellen bzw. Grafiken angezeigt werden.

Datenschutzerklärung
Durch die Nutzung der Website stimmen Sie der Verwendung von Cookies zur Durch­führung von Analysen und zum Erstellen von Inhalten und Werbung, welche an Ihre Interessen angepasst ist, zu.