Webstatistiken · 5 min read · Nov 26, 2025
Webseitenstatistiken mit AWStats & JAWStats auf Debian Lenny generieren
Webseitenstatistiken mit AWStats & JAWStats auf Debian Lenny generieren
Version 1.0
Autor: Falko Timme
Folge mir auf Twitter
Dieses Tutorial erklärt, wie Sie Statistiken für Ihre Webseite mit AWStats und JAWStats auf einem Debian Lenny-Webserver generieren können. AWStats ist ein kostenloses, leistungsstarkes und funktionsreiches Tool, das erweiterte Webserverstatistiken generiert. JAWStats läuft in Verbindung mit AWStats und erstellt klare und informative Diagramme, Grafiken und Tabellen über Ihre Webseitenbesucher. AWStats kann grafische Webseiten für die Statistiken erstellen, aber JAWStats präsentiert diese Daten auf eine viel schönere Weise - es ist viel besser organisiert und nutzt Ajax und Flash.
Ich gebe keine Garantie, dass dies bei Ihnen funktioniert!
1 Vorbemerkung
In diesem Tutorial habe ich eine Webseite www.example.com (mit den Aliasen example.com, www.example.net und example.net) mit dem Dokumentenstamm /var/www/www.example.com/web.
2 Installation und Konfiguration von AWStats
AWStats kann wie folgt installiert werden:
aptitude install awstatsDie Konfiguration befindet sich im Verzeichnis /etc/awstats/. Für jeden virtuellen Host benötigen wir eine Konfigurationsdatei mit dem Namen awstats.
cd /etc/awstats/
cp awstats.conf awstats.www.example.com.conf
vi awstats.www.example.com.conf
Ändern Sie die folgenden Einstellungen:
| [...] LogFile="/var/log/apache2/access.log" [...] LogFormat=1 [...] SiteDomain="www.example.com" [...] HostAliases="example.com www.example.net example.net" [...] |
LogFile muss den Pfad zur Apache-Zugriffsprotokolldatei Ihres virtuellen Hosts oder das allgemeine Apache-Zugriffsprotokoll (das für alle Seiten; AWStats kann die Datensätze herausfiltern, die nicht zu Ihrer Webseite gehören) enthalten. Wenn Sie einen dynamischen Dateinamen haben (z.B. weil er ein Datum enthält, beispielsweise weil Ihr Zugriffsprotokoll von cronolog oder vlogger erstellt wird), können Sie Platzhalter verwenden, z.B. so:
LogFile="/var/log/httpd/access.log_%YYYY-0_%MM-0_%DD-0"Dies wird in den Kommentaren in der AWStats-Konfigurationsdatei wie folgt erklärt:
“LogFile” enthält die Web-, FTP- oder Mail-Server-Protokolldatei zur Analyse.
Mögliche Werte: Ein vollständiger Pfad oder ein relativer Pfad vom awstats.pl-Verzeichnis.
Beispiel: “/var/log/apache/access.log”
Beispiel: “../logs/mycombinedlog.log”
Sie können auch Tags in diesem Dateinamen verwenden, wenn Sie einen dynamischen Dateinamen benötigen, der vom Datum oder der Uhrzeit abhängt (der Ersatz erfolgt durch AWStats zu Beginn seiner Ausführung). Diese verfügbaren Tags sind:
%YYYY-n wird durch 4 Ziffern Jahr ersetzt, das wir vor n Stunden waren
%YY-n wird durch 2 Ziffern Jahr ersetzt, das wir vor n Stunden waren
%MM-n wird durch 2 Ziffern Monat ersetzt, das wir vor n Stunden waren
%MO-n wird durch 3 Buchstaben Monat ersetzt, das wir vor n Stunden waren
%DD-n wird durch Tag ersetzt, das wir vor n Stunden waren
%HH-n wird durch Stunde ersetzt, die wir vor n Stunden waren
%NS-n wird durch Anzahl der Sekunden um 00:00 seit 1970 ersetzt
%WM-n wird durch die Wochennummer im Monat ersetzt (1-5)
%Wm-n wird durch die Wochennummer im Monat ersetzt (0-4)
%WY-n wird durch die Wochennummer im Jahr ersetzt (01-52)
%Wy-n wird durch die Wochennummer im Jahr ersetzt (00-51)
%DW-n wird durch die Tagesnummer in der Woche ersetzt (1-7, 1=Sonntag)
verwenden Sie n=24, wenn Sie benötigen (1-7, 1=Montag)
%Dw-n wird durch die Tagesnummer in der Woche ersetzt (0-6, 0=Sonntag)
verwenden Sie n=24, wenn Sie benötigen (0-6, 0=Montag)
Verwenden Sie 0 für n, wenn Sie das aktuelle Jahr, den Monat, den Tag, die Stunde… benötigen.
Beispiel: “/var/log/access_log.%YYYY-0%MM-0%DD-0.log”
Beispiel: “C:/WINNT/system32/LogFiles/W3SVC1/ex%YY-24%MM-24%DD-24.log”
Sie können auch eine Pipe verwenden, wenn die Protokolldatei aus einer Pipe kommt:
Beispiel: “gzip -d Wenn es mehrere Protokolldateien von Lastenausgleichsservern gibt:
Beispiel: “/pathtotools/logresolvemerge.pl *.log |”
Sie verwenden wahrscheinlich das kombinierte Protokollformat von Apache, daher sollten Sie LogFormat=1 verwenden (sehen Sie sich erneut die Kommentare in der Datei an, um das richtige Format zu finden, aber in den meisten Fällen verwenden Sie das kombinierte Protokollformat von Apache).
SiteDomain: Geben Sie die Hauptdomain Ihrer Webseite an (www.example.com in diesem Fall).
HostAliases: Geben Sie alle anderen Domains/Subdomains an, die verwendet werden, um auf Ihre Webseite zuzugreifen (example.com, www.example.net, example.net in diesem Beispiel).
Als nächstes erstellen wir einen Cron-Job, um AWStats alle neun Minuten auszuführen:
crontab -e | 9,19,29,39,49,59 * * * * /usr/lib/cgi-bin/awstats.pl -config=www.example.com -update >/dev/null |
(Wenn Sie ein dynamisches Zugriffsprotokoll haben, das von cronolog oder vlogger erstellt wird, ist es eine gute Idee, die Minute 59 im Cron-Job einzuschließen, damit AWStats das aktuelle Zugriffsprotokoll um 23:59 Uhr verarbeiten kann, bevor ein neues Zugriffsprotokoll um 0:00 Uhr erstellt wird - so verlieren Sie nur die Minute zwischen 23:59 Uhr und 0:00 Uhr in Ihren Statistiken.)
3 Installation und Konfiguration von JAWStats
Gehen Sie zu http://www.jawstats.com/download, laden Sie die neueste Version von JAWStats herunter, entpacken Sie sie auf Ihrem PC und laden Sie sie in ein Verzeichnis innerhalb Ihrer www.example.com-Webseite hoch, z.B. mit FTP. In diesem Tutorial lade ich sie in das Verzeichnis /var/www/www.example.com/web/jawstats hoch.
Anschließend müssen wir config.dist.php in config.php umbenennen und ändern:
mv /var/www/www.example.com/web/jawstats/config.dist.php /var/www/www.example.com/web/jawstats/config.php
vi /var/www/www.example.com/web/jawstats/config.php
| "/var/lib/awstats/", "updatepath" => "/usr/lib/cgi-bin/", "siteurl" => "http://www.example.com", "sitename" => "Meine Beispiel.com Webseite", "theme" => "default", "fadespeed" => 250, "password" => "secret", "includes" => "", "language" => "de-de" ); ?> |
Wenn Sie den Link “Site ändern” entfernen möchten, ändern Sie $bConfigChangeSites auf false.
Wenn Sie nicht möchten, dass Ihre Benutzer die Statistiken selbst aktualisieren können, setzen Sie $bConfigUpdateSites auf false.
Danach haben wir das Array $aConfig[“site1”] - benennen Sie es so um, dass es nach Ihrer Seite benannt ist ($aConfig[“www.example.com”]). Setzen Sie statspath auf /var/lib/awstats/ (vergessen Sie nicht den abschließenden Schrägstrich!), updatepath auf /usr/lib/cgi-bin/, siteurl auf http://www.example.com und geben Sie den Namen Ihrer Webseite unter sitename an. Ein Passwort ist nur erforderlich, wenn Sie $bConfigUpdateSites auf true gesetzt haben (wenn Sie Ihren Benutzern erlauben, Statistiken über den Browser zu aktualisieren, müssen sie dieses Passwort eingeben).
Das war’s - nachdem der AWStats-Cron-Job zum ersten Mal ausgeführt wurde (was bei Webseiten mit viel Verkehr lange dauern kann, also haben Sie Geduld), können Sie auf Ihre Statistiken unter http://www.example.com/jawstats zugreifen.
Hier sind einige Screenshots, wie es aussehen kann:




4 JAWStats-Ausgabeverzeichnis passwortschützen (optional)
Jetzt ist es eine gute Idee, das Verzeichnis /var/www/www.example.com/web/jawstats passwortzuschützen, es sei denn, Sie möchten, dass jeder auf Ihre Webseitenstatistiken zugreifen kann.
Um dies zu tun, erstellen wir eine .htaccess-Datei in /var/www/www.example.com/web/jawstats:
vi /var/www/www.example.com/web/jawstats/.htaccess| AuthType Basic AuthName "Nur für Mitglieder" AuthUserFile /var/www/www.example.com/.htpasswd |
Dann müssen wir die Passwortdatei /var/www/www.example.com/.htpasswd erstellen. Wir möchten uns mit dem Benutzernamen admin anmelden, also machen wir das:
htpasswd -c /var/www/www.example.com/.htpasswd adminGeben Sie ein Passwort für admin ein, und Sie sind fertig!
5 Links
- AWStats: http://www.awstats.org/
- JAWStats: http://www.jawstats.com/
- Apache: http://httpd.apache.org/
- Debian: http://www.debian.org/
Erhalte neue Beiträge in deinem Posteingang.
Kein Spam. Jederzeit abmelden.