AWstats Installations Howto

Bash, Shell, PHP, Python, Perl, CGI
carsten_s
Posts: 20
Joined: 2002-10-15 22:30
Location: Hessen

AWstats Installations Howto

Post by carsten_s »

Aktualisiert: 2.5.03

Hallo!

Habe mir gerade AWstats installiert. Da ich kein Englisch Profi bin hatte ich mit der Installationsanleitung Probleme. Auch hier im Forum konnte man keine 100% Anleitung finden. Deshalb hier mal Schritt für Schritt wie ich vorgegangen bin:

1. Als erstes mal die aktuelle Version von Awstats bei http://awstats.sourceforge.net runterladen.

2. Dann ein Rootverzeichniss für Awstats in Deinem cgi-bin Ordner erstellen (z.B. awstats)

3. Alle Dateien aus wwwRoot/cgi-bin in Dein Rootverzeichnis für Awstats übertragen (z.B. cgi-bin/awstats).
Allen .pl Dateien (awstats.pl) die Rechte 755 vergeben. Beim aufruf dieser Datei müßte schon eine Fehlerseite von Awstats angezeigt werden und nicht von Deinen Browser oder Server.

4. Ein Verzeichniss (awstats) hin Deinem Html root erstellen.
Dort den Ordner "icons" erstellen und die Dateien aus wwwRoot/icons übertragen.

5. Ein Verzeichniss "stats" erstellen in dem Rootverzeichniss von awstats (z.B. cgi-bin/awstats).
Schreibrechte vergeben.

6. Die Datei awstats.model.config bearbeiten:
(Die Zeilennummer können je nach Version anders sein. Hier 5.4)

Zeile 48 LogFile="/home/www/web1/log/access_log"
Diese Pfad kann bei jedem anders sein, bitte überprüfen.

Zeile 128 SiteDomain="www.DeineSeite.de"

Zeile 141 HostAliases="www.DeineSiete.de x.y.z.w localhost Deine.IP.00.00"
Hier sollten alle Domains, IP`s rein die Ihr nicht als Referer angezeigt bekommen möchtet. Wenn möglich sollte man die IP statt den Host angeben. Einfach mit einem Leerschritt trennen.

Zeile 159 DNSLookup=1
DNSLookup bedeutet ob man die IP oder den Host der Besucher angezeigt bekommen möchte. Bei hohen Besucherzahlen empfiehlt es sich die IP anzeigen zu lassen. (0=IP, 1=Host)

Zeile 174 DirData="/home/www/web1/html/cgi-bin/awstats/stats"

Zeile 182 DirCgi="/cgi-bin/awstats"
Rootverzeichnis von awstats

Zeile 193 DirIcons="/awstats/icon"


Wenn man das update von dem Browser ausführen möchte kann man folgende Zeile editieren:

Zeile 210 AllowToUpdateStatsFromBrowser=1
1= An, 0=Aus

Hier sollte dann ein Link auf der Awstats oberfläche erscheinen von dem aus man das Update ausführen kann. Man sollte aber beachten das bei großen Logs bei einem normalen Webaccount zu einem "Time out" des Scriptes kommen kann. Also wenn die Laufzeit eines Perl/Cgi Scriptes vom Hoster beschränkt wird.

Die Datei anschließen in das Rootverzeichnis (cgi-bin/awstats/) kopieren und umbenennen (z.B. awstats.web1.config). Wenn Ihr jetzt mehrere Benutzer habt (z.B. web2 etc) müsst Ihr für jeden dieser solch eine Config Datei anlegen.

7. Datei awstats_updateall.pl unter "awstats-5.4/tools/" öffnen.
Hier müssend folgende zeilen angepasst werden:

Zeile 16 & 17
# Default value of DIRCONFIG and AWSTATSSCRIPT
my $DIRCONFIG = "/home/www/web1/html/cgi-bin/awstats";
my $AWSTATSSCRIPT = "/home/www/web1/html/cgi-bin/awstats/awstats.pl";


8. Anschließend die Datei in das Rootverzeichnis von awstats (cgi-bin/awstats) kopieren und ebenfalls die Rechte 755 vergeben.

9. Per SSH (z.B. mit Putty) einloggen und das Rootverzeichnis von awstats wechseln.
Dort dann folgenden Befehl ausführen:

Code: Select all

perl awstats_updateall.pl now
Nun müsste die Statistik in dem Ordner stats erstellt werden und müsste auch beim aufrufen der Datei "awstats.pl?config=web1" erscheinen.
Wichtig: Ihr müsst immer die Variable der Config Datei mit angeben. Also wenn die die Datei "awstats.web1.config" heisst dann müsst Ihr die Datei mit "awstats.pl?config=web1 aufrufen. Dies könnt ihr dann z.B. auch mit web2 machen, falls diese Webaccount und die Datei besteht.

10. Jetzt könnt Ihr noch einen Cronjob erstellen der jeden Tag um Mitternacht die Statistik aktualisiert. Hier ein Beispiel:

Code: Select all

# AWstats
15 0 * * * perl /home/www/web1/html/cgi-bin/awstats/awstats_updateall.pl now
Wenn man eine Rootmail bei jedem update unterbinden möchte hängt noch ein "2>&1 >/dev/null" an den Job dran. Beispiel:

Code: Select all

perl /verzeichnis/pfad/zu/awstats_updateall.pl now 2>&1 >/dev/null
Hier wird das Script jeden Tag um 15 Minuten nach 12 ausgeführt.

Ich hoffe ich haben keinen Fehler gemacht. Wenn doch berichtigt mich bitte. Ich versuche dieses Howto immer aktuell zu halten. Also wenn jemand noch einen Tipp oder ähnliches hat, immer rüber damit :wink:
Last edited by carsten_s on 2003-05-02 22:36, edited 2 times in total.
distanzcheck
Posts: 531
Joined: 2003-01-09 08:58
Location: NRW

Re: AWstats Installations Howto

Post by distanzcheck »

danke Carsten,

habe den Cronjob mit Webmin erstellt. ist es richtig ausführen als Root ?

Als ausgabe beim aufrufen des Cronjobs kommt bei mir

Code: Select all

Running /home/www/web6/html/cgi-bin/awstats/awstats.pl to update config web6
Update for config "/home/www/web6/html/cgi-bin/awstats/awstats.web6.conf"
With data in log file "/home/www/web6/log/access_log"...
Phase 1 : First bypass old records, searching new record...
Phase 2 : Now process new records (Flush history on disk after 16000 hosts)...
Parsed lines in file: 4253
Found 2 dropped records,
Found 0 corrupted records,
Found 4087 old records,
Found 164 new qualifed records.
Und kann ich in dem gleichen Web wo nun AWstats läuft (Web6) auch die conf files für andere Webs anlegen oder muß ich awstats in jedem web neu installieren ???


Gruß Dirk
carsten_s
Posts: 20
Joined: 2002-10-15 22:30
Location: Hessen

Re: AWstats Installations Howto

Post by carsten_s »

Hallo Dirk!

Ja, sieht gut aus.

Bei dem ersten Update kann es je nach nachdem ziemlich lange dauern. Zum Thema Cronjobs für Awstats findest Du hiernoch einen Thread.

Du musst nich für jeden webX Awstats extra installieren sonder immer nur eine Config Datei erstellen und diese entsprechend bearbeiten (z.B.Domains). Die Domains werden glaube ich nur dafür gebraucht um die eigenen Refrerer auszublenden.

Du kannst die anderen configs auch in dem Verzeichniss erstellen.

Gruß
Carsten
distanzcheck
Posts: 531
Joined: 2003-01-09 08:58
Location: NRW

Re: AWstats Installations Howto

Post by distanzcheck »

ja super hat alles geklappt!

Dirk

Achja ist es bei hohem besucher Aufkommen sinnvoll den Cronjob mehrmals am Tag zu starten oder bringt das Probleme ???
quicksilver
Posts: 68
Joined: 2003-04-08 16:15

Re: AWstats Installations Howto

Post by quicksilver »

will ja nich meckern :) aber die URl ist falsch :)
http://awstats.sourceforge.net/

ist wohl die richtige
carsten_s
Posts: 20
Joined: 2002-10-15 22:30
Location: Hessen

Re: AWstats Installations Howto

Post by carsten_s »

quicksilver wrote:will ja nich meckern :) aber die URl ist falsch :)
http://awstats.sourceforge.net/

ist wohl die richtige
Joh, Fehler von mir. Habe ich korregiert. :lol:


@Dirk

Ich denke nicht. Es kommt darauf an wieviel mal Du die Statistik am Tag abrufen möchtest. Was ich nicht empfehlen würde den Cronjob alle halbe Stunden laufen zu lassen. Belastet nur unnötig den Server.
Achso, Du musst natürlich auch in den verschiedenen Configs den Pfad zur enstprechenden "access_log" angeben. Sonst hast Du überall die selbe Statistik.
Last edited by carsten_s on 2003-04-29 10:44, edited 1 time in total.
distanzcheck
Posts: 531
Joined: 2003-01-09 08:58
Location: NRW

Re: AWstats Installations Howto

Post by distanzcheck »

welche häufigkeit wäre den ok und akzeptabel ???

jede Stunde, alle zwei Stunden oder wie ?

Dirk
carsten_s
Posts: 20
Joined: 2002-10-15 22:30
Location: Hessen

Re: AWstats Installations Howto

Post by carsten_s »

Im Endeffekt mußt Du entscheiden was für dich ok ist. Es kommt darauf wiele WebX`s Du hast und wie groß die log`s (wieviele Besucher) sind.

Es gehen keinen Daten verloren wenn das update nur 1x täglich laufen lässt. Wenn Du ihn öfters laufen lässt haßt Du halt immer eine aktuelle Statistik.

Gruß
Carsten
distanzcheck
Posts: 531
Joined: 2003-01-09 08:58
Location: NRW

Re: AWstats Installations Howto

Post by distanzcheck »

hmmm bekommen nun immer wenn der chronjob ausgeführt wird eine email an root

Code: Select all

Running /home/www/web6/html/cgi-bin/awstats/awstats.pl to update config web1
Update for config "/home/www/web6/html/cgi-bin/awstats/awstats.web1.conf"
With data in log file "/home/www/web1/log/access_log"...
Phase 1 : First bypass old records, searching new record...
Phase 2 : Now process new records (Flush history on disk after 16000 hosts)...
Parsed lines in file: 1885
Found 0 dropped records,
Found 0 corrupted records,
Found 1550 old records,
Found 335 new qualifed records.
wie bekomme ich das weg ?

Dirk
carsten_s
Posts: 20
Joined: 2002-10-15 22:30
Location: Hessen

@Dirk

Post by carsten_s »

Nochmal zu Deiner Frage mit dem Cronjob. In der config steht wenn man große Besucherzahlen hat sollt man DNS Lookup ausschalten weil das den update Prozess ziemlich verlangsamt. Sowie ich das verstanden habe wählt man hier zwischen IP und vollständige host angabe. Also bei 1 bekommt man den Host angezeigt und bei 0 die IP Adresse des Besuchers.

Zeile 159 DNSLookup=0

Wenn man das update von dem Browser ausführen möchte kann man folgende Zeile editieren:

Zeile 210 AllowToUpdateStatsFromBrowser=1
1= An, 0=Aus

Hier sollte dann ein Link auf der Awstats oberfläche erscheinen von dem aus man das Update ausführen kann. Man sollte aber beachten das bei großen Logs bei einem normalen Webaccount zu einem "Time out" des Scriptes kommen kann. Also wenn die Laufzeit eines Perl/Cgi Scriptes vom Hoster beschränkt wird.
hmmm bekommen nun immer wenn der chronjob ausgeführt wird eine email an root
Ã?ndere mal in der config Datei folgende Zeile:
Zeile 590 WarningMessages=1
Zeile 610 DebugMessages=1

Schalte beide mal auf 0.
distanzcheck
Posts: 531
Joined: 2003-01-09 08:58
Location: NRW

Re: AWstats Installations Howto

Post by distanzcheck »

Ã?ndere mal in der config Datei folgende Zeile:
Zeile 590 WarningMessages=1
Zeile 610 DebugMessages=1
Werde ich mal testen, sage dann bescheid.
Dirk
distanzcheck
Posts: 531
Joined: 2003-01-09 08:58
Location: NRW

Re: AWstats Installations Howto

Post by distanzcheck »

nee des war es nicht , kommt immer noch ne email.

Code: Select all

Running /home/www/web6/html/cgi-bin/awstats/awstats.pl to update config web1
Update for config "/home/www/web6/html/cgi-bin/awstats/awstats.web1.conf"
With data in log file "/home/www/web1/log/access_log"...
Phase 1 : First bypass old records, searching new record...
Phase 2 : Now process new records (Flush history on disk after 16000 hosts)...
Parsed lines in file: 2362
Found 0 dropped records,
Found 0 corrupted records,
Found 2109 old records,
Found 253 new qualifed records.
Dirk
captaincrunch
Userprojekt
Userprojekt
Posts: 7066
Joined: 2002-10-09 14:30
Location: Dorsten

Re: AWstats Installations Howto

Post by captaincrunch »

Dann probier mal das, was man normalerweise unter Unix macht, um die Standardausgabe und die -fehlerausgabe nach /dev/null umzuleiten :

Code: Select all

Scriptname 2>&1 > /dev/null
DebianHowTo
echo "[q]sa[ln0=aln256%Pln256/snlbx]sb729901041524823122snlbxq"|dc
distanzcheck
Posts: 531
Joined: 2003-01-09 08:58
Location: NRW

Re: AWstats Installations Howto

Post by distanzcheck »

also den crontab so aufrufen ?

Code: Select all

awstats_updateall.pl now /dev/null
Dirk
Last edited by distanzcheck on 2003-04-30 06:24, edited 1 time in total.
captaincrunch
Userprojekt
Userprojekt
Posts: 7066
Joined: 2002-10-09 14:30
Location: Dorsten

Re: AWstats Installations Howto

Post by captaincrunch »

Nein, so :

Code: Select all

perl awstats_updateall.pl now 2>&1 >/dev/null
DebianHowTo
echo "[q]sa[ln0=aln256%Pln256/snlbx]sb729901041524823122snlbxq"|dc
distanzcheck
Posts: 531
Joined: 2003-01-09 08:58
Location: NRW

Re: AWstats Installations Howto

Post by distanzcheck »

sprich also es sollte kommplett so aussehen, stimmt ?

Code: Select all

/home/www/web1/html/cgi-bin/awstats/awstats_updateall.pl now 2>&1 >/dev/null
Dirk

Allen einen schönen 1. Mai
captaincrunch
Userprojekt
Userprojekt
Posts: 7066
Joined: 2002-10-09 14:30
Location: Dorsten

Re: AWstats Installations Howto

Post by captaincrunch »

Exakt ...
DebianHowTo
echo "[q]sa[ln0=aln256%Pln256/snlbx]sb729901041524823122snlbxq"|dc
distanzcheck
Posts: 531
Joined: 2003-01-09 08:58
Location: NRW

Re: AWstats Installations Howto

Post by distanzcheck »

jo des wars!

Danke!

Dirk
bravesurfer
Posts: 170
Joined: 2003-05-08 12:17
Location: Stuttgart

Re: AWstats Installations Howto

Post by bravesurfer »

Hätte noch eine Frage ´bevor ich mich da ransetze:

Funktionieren awstats und Webalizer den dann nebeneinander oder muß ich den Webalizer deinstallieren?

Kann ich Awstats zur Not wieder sauber deinstallieren?

Mfg

M. Clemenz
jamesb
Posts: 661
Joined: 2002-05-08 15:35
Location: Karlsruhe

Re: AWstats Installations Howto

Post by jamesb »

Eigentlich beides: ja.

JamesB
bravesurfer
Posts: 170
Joined: 2003-05-08 12:17
Location: Stuttgart

Re: AWstats Installations Howto

Post by bravesurfer »

Hallo,

hab das ganze nun installiert und funktioniert soweit auch sehr gut.
Habe allerdings im Moment alle awstats.conf Dateien in einem Verzeichnis.
Das ist einerseits bequem lässt es aber andererseits auch zu, daß der User web1 auf die Daten des web2 zugreifen kann etc.

Wie bekomme ich es den hin, daß jeder User sein eigenes Verzeichnis und somit den eiggenen Vezeichnisschutz bekommen kann?

Und noch ws ist mir gerade aufgefallen. Auf der HP von awstats hat deren Demo das Navigationsmenü links fein sauber angeordnet. Bei mir wird das oben angezeigt und auch nicht mit Fenstern.
Wie bekomm ich das den gebacken?

Mein englisch ist leider nicht das Beste und ich kann den entscheidenen Hinweis auf der HP nicht finden.
Dachte das liegt an der neuen 5.7 Version aber auch damit siehts bei mir wie oben beschreiben aus und nicht wie bei der Demo!

Wäre super wenn mir jemand helfen könnte bzw einen Tip gibt.


Mfg

M. Clemenz
bravesurfer
Posts: 170
Joined: 2003-05-08 12:17
Location: Stuttgart

Re: AWstats Installations Howto

Post by bravesurfer »

So hab das eine Problem selbst gelöst. Nach langem suchen habe ich den Eintrag im jeweiligen Config-File

UseFramesWhenCGI=0

auf


UseFramesWhenCGI=1

geändert und er zeigt es mir nun wie in der Demo im Frame an, ist deutlich überischtlicher finde ich!

Suche aber immernoch nach einer Möglichkeit, jede einzelen Statistik auf Wunsch des Users Passwort zu schützen, wenn die alle in einem Ordner liegen geht das aber nciht. Wenn ich die COfnigs in das jeweilige Verzeichnis des Users setze dann stimmen die Pfade nicht mehr zumal ich ja der awstats.pl für jeden einzelene sagen müsste, wo der die Datei findet. Keiner eine Idee oder gar Lösung?


Mfg

M. Clemenz
jamesb
Posts: 661
Joined: 2002-05-08 15:35
Location: Karlsruhe

Re: AWstats Installations Howto

Post by jamesb »

Du kannst in den awstats.conf-Dateien angeben, dass die Statistik nur für einen bestimmten Usernamen ausgegeben werden darf (Option: AllowAccessFromWebToFollowingAuthenticatedUsers).
Dann musst du noch deine awstats.pl per .htaccess schützen (mit den Usern drin, die du in den awstats.conf-Dateien angegeben hast). Hier gibt es auch via Apache-Plugin die Möglichkeit, deine Systemuser direkt zu übernehmen (per PAM). Dazu gibt es unter Debian ein vorgefertigtes Packet, unter SuSE müsstest du ein bisschen suchen.

JamesB
bravesurfer
Posts: 170
Joined: 2003-05-08 12:17
Location: Stuttgart

Re: AWstats Installations Howto

Post by bravesurfer »

JamesB wrote:Du kannst in den awstats.conf-Dateien angeben, dass die Statistik nur für einen bestimmten Usernamen ausgegeben werden darf (Option: AllowAccessFromWebToFollowingAuthenticatedUsers).
Die Funktion habe ich gestern auch entdeckt!
Klingt auch eigentlich ganz gut, danke für den Tip, ein kleiner Schönheitsfehler wäre es dann aber noch für User, die ihre Statistik frei zugägnlich machen wollen, die müssen ja dann auch die htaccess Passwortabfrage über sich ergehen lassen! Aber ansonsten scheint mir das eine sehr gute Lösung.

Ansosnten bleibt vermutlich nur noch der weg das komplette Paket für jeden in ein eigenes Verzeichnis zu installieren :?

Mfg

M. Clemenz
jamesb
Posts: 661
Joined: 2002-05-08 15:35
Location: Karlsruhe

Re: AWstats Installations Howto

Post by jamesb »

Du kannst in dem Fall, dass die Statistik für alle zugänglich sein soll, für diese einen weitern "Dummy"-User anlegen, der kein Passwort besitzt (den könntest du dann direkt per .htpasswd erstellen) und diesen zusätzlich in der Konfig von awstats eintragen.

JamesB