Web statistika za Apache in Apache2 - Awstats

Igor Član
Za Linux obstaja veliko programov za spremljanje statistike web prometa, ki teče preko web serverjev. Ponavadi je to Apache, obstajajo pa seveda tudi drugi. Za statične web strani so verjetno najbolj primerni kakšni programi, ki vključujejo dodatne PHP funkcije, npr. BBClone - http://bbclone.de

S takimi programi lahko dobite dodatne informacije o vaših obiskovalcih internetnih strani, vendar je potrebno na vsako stran dodati določeno ~kodo . Pogosto to je to zamudno ali nepotrebno, če so vam dovolj statistični podatki, ki jih beleži Apache web server. Za tak način spremljanja statistike pa izstopata kot boljša dva programa - Awstats - http://awstats.sourceforge.net in Webalizer - http://www.mrunix.net/webalizer Webalizer je starejši, nazadnje sem imel probleme s kombinacijo novejšega Apacha2 in Webalizerja pri prikazu nekaterih podatkov, tako da sem se tokrat ponovno odločil, da inštaliram Awstats (heh, enkrat prej neuspešno)...

No, tokrat pa deluje! Pravzaprav je relativno simpelj! :)

Tole pišem, da ne bom naslednjič zopet izzumljal tople vode, navodila za Awstats so namreč tako obsežna, da imaš občutek, da potrebuješ najmanj dva doktorata za uspešno namestitev :/ Na kratko pa gre nekako takole (sledeči postopek bo deloval, če imate uspešno nameščen Apache2 in Perl, ki ga Awstats uporablja; sam imam trenutno nameščen Ubuntu Edgy, najverjetneje bo ta postopek deloval tudi na ostalih Ubuntu in Debian distribucijah, nisem pa preverjal):

Postopek:

V ukazni vrstici se logiraj kot root:
$ sudo su (vpiši password)

Inštaliraj pakete (lahko tudi s Synaptic-om):
# apt-get install awstats
# apt-get install libnet-ip-perl
# apt-get install libgeo-ipfree-perl


Direktoriji kjer se nahajajo datoteke, ki so potrebne za nastavitev:

# cd /etc/awstats/
# cd /var/lib/awstats/
# cd /etc/apache2/
# cd /etc/apache2/sites-enabled
# cd /var/log/apache2/
# cd /usr/lib/cgi-bin/
# cd /var/spool/cron/crontabs/


Torej, prvo nastavimo konfiguracijske datoteke za Apache2:

# gedit /etc/apache2/apache2.conf

Dodamo sledeče v apache2.conf:
Alias /awstats-icon/ /usr/share/awstats/icon/

Options None
AllowOverride None
Order allow,deny
Allow from all


ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/


AllowOverride None
Options ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
Sam imam v /etc/apache2/sites-enabled nekaj VirtualHost-ov, v vsakega sem dodal (znotraj .):
ScriptAlias /statistika/ /usr/lib/cgi-bin/
Potem sem nastavil konfiguracijske datoteke za Awstats.
Skopiral sem awstats.conf v awstats.imedomene.tld.conf (tu spremenite zgolj 'imedomene' - 'awstats', 'tld', 'conf' ne spreminjajte!):


# cp /etc/awstats/awstats.conf /etc/awstats/awstats.imedomene.tld.conf


# gedit /etc/awstats/awstats.imedomene.tld.conf

V awstats.imedomene.tld.conf sem nastavil sledeče (ostalo sem pustil nespremenjeno):
## (Komentar: pot do log datoteke)
LogFile="/var/log/apache2/imedomene.com.access.log"

## (Komentar: default je nastavljen na 4, vendar ima Ubuntu Apache2 sistem logiranja, ki ustreza št. 1)
LogFormat=1

## (komentar: ime domene, odvisno kako imate nastavljen DNS...)
SiteDomain="www.imedomene.com"

## (komentar: ta nastavitev je važna, če ne želite, da awstats vodi statistike dostopov z vašega računalnika. Ne smete uporabljati vejic, samo presledke. Namesto '198.72.198.105' vstavite vašo IP številko, lahko tudi www.imedomene.com)
HostAliases="localhost 127.0.0.1 198.72.198.105"

## (komentar: če NISTE namestili libnet-ip-perl in libgeo-ipfree-perl potem to pustite na 1)
DNSLookup=0

## (komentar: direktorij kjer se se hranijo posamezne statistike ki jih zgenerira awstats. Brisanje teh datotek resetira statistike.)
DirData="/var/lib/awstats"

## (komentar: direktorij kjer se nahaja awstats.pl)
DirCgi="/usr/lib/cgi-bin/"

## (komentar: direktorij kjer se nahajajo ikone. Ta alias sem nastavil zgoraj v apache2.conf)
DirIcons="/awstats-icon"

## (komentar: ta nastavitev je važna, če ne želite, da awstats vodi statistike dostopov z vašega računalnika. Ne smete uporabljati vejic, samo presledke. Namesto '198.72.198.105' vstavite vašo IP številko, lahko tudi www.imedomene.com)
SkipHosts="198.72.198.105 www.imedomene.com"

## (komentar: plugin za ugotavljanje držav iz IP številk)
LoadPlugin="geoipfree"

## (komentar: plugin za mouseover-komentarje)
LoadPlugin="tooltips"
To je vse kar je potrebno nastaviti za Apache2 in Awstats. Reštartamo Apacha in zaženemo Awstats s komandne vrstice (ne pozabite prej shraniti datotek, ki ste jih spremenili!):

# /etc/init.d/apache2 restart
# /usr/lib/cgi-bin/awstats.pl -config=imedomene.tld -update

Sedaj naj bi že lahko videli statistiko z browserjem:

http://www.imedomene.com/statistika/awstats.pl?config=imedomene.tld

Dodamo še vrstico v root crontab (če ga še ni si preberi kako se nastavi: man crontab, ne ustvarjaj manualno te datoteke!):

# gedit /var/spool/cron/crontabs/root
0 */1 * * * /usr/lib/cgi-bin/awstats.pl -config=imedomene.tld -update > /dev/null
To je to. S temi nastavitvami vam bo root crontab osveževal statistiko web obiskov vsako polno uro, noč in dan, 365 dni v letu! \o/

.
I.

Komentarji

  • Screamboy Član Ubuntu.si
    Mene zanima ce se obstaja kaka statistika za apache?
  • Cube Član Ubuntu.si
    Igor pohvalno, take rabmo :)
    kr u wiki s tem

    Screamboy, kaj zelis imeti prikazano od apacheja...?
  • apache je sranje kr je vsak spam pa vse naret direkt za njega.. uporabljajte lighttpd namesto njega! porabi manj rama, dela hitreje.. glede statistike pa se nisem nic cekiral.. :)
  • Screamboy Član Ubuntu.si
    lighttpd
    zanimivo samo je trenutno webpage down :/
  • Kami Član Ubuntu.si
    Screamboy je dejal/-a:
    Mene zanima ce se obstaja kaka statistika za apache?
    Imaš veliko programov, ki znajo sparsati Apache log datoteke in iz tega generirati iz statistiko.

    Eden popularnih je webalizer, drugi pa je že omenjen v naslovu teme (awstats).

    Vsekakor pa ti za statistiko bolj priporočam google analytics (sicer nima veze s Apache log datotekami ampak vseeno), ker prikaže podatke v lepi obliki, omogoča izvoz podatkov v pdf, csv itd.
  • t3ch Član
    uredil/-a 21. March, 2009
    mi je uspelo usposobit awstats na lighttpd! tak da.. poslite apache u pm :)

    tu mas kak naret to:
    http://blog.kejadlen.net/2007/12/02/awstats-with-lighttpd-on-ubuntu

    da pa polejas mojo statistiko na lighttpd da deluje:
    http://aws.m5it.org/cgi-bin/awstats.pl :)

    lp
Za komentiranje se prijavite ali pa se vpišite.