Installere AWStats og verktøy
Konfigurere AWStats for nettstedet ditt
Sette opp tillatelser
Kjør AWStats for første gang
Konfigurerer Nginx for å se AWStats online
Sikring av AWStats
Kjøre AWStats daglig og når logger roteres
AWStats er et nyttig verktøy for å analysere nettrafikk. HTML-grensesnittet kan nås gjennom nettleseren, og gir deg enkel innsikt om hvem som ser på nettstedet ditt. Denne opplæringen vil lede deg gjennom å installere, konfigurere og sikre AWStats for en Nginx-nettserver på Fedora 28.
Hvis du ikke har installert Nginx ennå, gjør det nå:
sudo dnf install nginx
sudo systemctl enable --now nginx
Først må du installere et par ting. Heldigvis er dette veldig enkelt, siden all programvaren du trenger er i Fedoras depoter:
sudo dnf install awstats httpd-tools php-fpm
httpd-toolser en pakke som inneholder noen verktøy vi trenger, for eksempel htpasswd. Den ble designet for bruk med Apache, men de fleste verktøyene fungerer også med Nginx. Det andre verktøyet, php-fpm, lar oss kjøre PHP-skript fra Nginx.
Vi må aktivere php-fpmgjennom systemctl:
sudo systemctl enable --now php-fpm
Konfigurere AWStats for nettstedet ditt
Vi må konfigurere AWStats før vi kan bruke den. Kopier modellkonfigurasjonsfilen for å lage en ny konfigurasjon for nettstedet ditt:
sudo cp /etc/awstats/awstats.model.conf /etc/awstats/awstats.<yoursitename>.conf
Rediger den filen nå:
sudoedit /etc/awstats/awstats.<yoursitename>.conf
Rull ned til linjen som sier LogFile="/var/log/httpd/access_log". Fordi vi bruker Nginx i stedet for Apache, må vi endre dette. Endre den til LogFile="/var/log/nginx/access.log".
Deretter ruller du helt ned til linjen som sier DirIcons="/awstatsicons". Hvis du ikke finner den, skriv inn /DirIconsog trykk deretter for ENTERå hoppe til den. Endre denne linjen til DirIcons="../icon".
Til slutt trenger AWStats å vite hvilket nettsted det analyserer. På denne måten kan den rapportere ting som hvilke brukere som kommer fra eksterne nettsteder. De to relevante konfigurasjonsalternativene her er SiteDomainog HostAliases. SiteDomainvil ganske enkelt være domenenavnet til nettstedet; og HostAliasesvil være en liste over andre domenenavn som kan brukes (for eksempel hvis nettstedet ditt er www.example.com, kan du legge det example.comher hvis det er samme nettsted).
Alle konfigurasjonsalternativene er dokumentert i konfigurasjonsfilen. Hvis du vil vite nøyaktig hva et alternativ gjør, eller hvis du vil se alle alternativene som AWStats har å tilby, er det bare å lese kommentarene i den filen.
Sette opp tillatelser
Det anbefales på det sterkeste å ikke kjøre AWStats som root-bruker. Vi kjører AWStats under nginxbrukeren som allerede er satt opp under Nginx-installasjonen.
For å gjøre dette, må vi gjøre nginxeieren av katalogen der AWStats lagrer databasen sin ( /var/lib/awstats):
sudo chown -R nginx /var/lib/awstats
Kjør AWStats for første gang
I et senere trinn vil vi sette opp AWStats til å kjøre når serverloggene roteres. Denne første gangen er det imidlertid best å kjøre den manuelt. Gjør det med følgende kommando:
sudo -u nginx /usr/share/awstats/wwwroot/cgi-bin/awstats.pl -config=<yoursitename>
Merk: Den -u nginxdelen forteller sudoå kjøre kommandoen som nginxbrukeren snarere enn som root.
Utgangen vil være lik følgende:
Create/Update database for config "/etc/awstats/awstats.<yoursitename>.conf" by AWStats version 7.7 (build 20180105)
From data in log file "/var/log/nginx/access.log"...
Phase 1: First bypass old records, searching new record...
Direct access after last parsed record (after line 0)
Jumped lines in file: 0
Found 0 already parsed records.
Parsed lines in file: 0
Found 0 dropped records,
Found 0 comments,
Found 0 blank records,
Found 0 corrupted records,
Found 0 old records,
Found 0 new qualified records.
Konfigurerer Nginx for å se AWStats online
Deretter konfigurerer vi Nginx slik at vi kan se vår nettstedstatistikk fra selve nettstedet, i stedet for gjennom et kommandolinjegrensesnitt. Rediger hovedkonfigurasjonsfilen for Nginx:
sudoedit /etc/nginx/nginx.conf
Her legger vi til en mappe som inneholder AWStats-delen av nettstedet. I denne opplæringen kaller vi det webstats, men du kan kalle det hva du vil.
Finn delen av konfigurasjonsfilen som sier server. Etter linjen include /etc/nginx/default.d/*.conf;. Legg til en ny seksjon:
location /webstats/ {
alias /usr/share/awstats/wwwroot/;
location ~ /cgi-bin/(.+\.pl) {
include fastcgi.conf;
fastcgi_pass php-fpm;
fastcgi_split_path_info ^/webstats/(.+\.pl)(.*)$;
fastcgi_param SCRIPT_FILENAME /usr/share/awstats/tools/nginx/awstats-fcgi.php;
fastcgi_param X_SCRIPT_FILENAME /usr/share/awstats/wwwroot/$fastcgi_script_name;
fastcgi_param X_SCRIPT_NAME $fastcgi_script_name;
}
}
Denne delen forteller Nginx at når vi går til webstatskatalogen i nettleseren vår, skal den tjene AWStats' webrot, og hvis vi ber om et skript i cgi-binkatalogen, skal den kjøre det.
Etter å ha redigert konfigurasjonsfilen, må vi starte Nginx på nytt:
sudo systemctl restart nginx
Åpne nå nettleseren og gå til <your website>/webstats/cgi-bin/awstats.pl?config=<yoursitename>. Dette er AWStats sin hjemmeside for nettstedet ditt. Det vil se litt slik ut:

Sørg for at siden laster inn riktig og at du kan se AWStats-logoen øverst i høyre hjørne. Hvis siden ikke lastes inn eller logoen mangler, kan det hende du har feilkonfigurert noe i et tidligere trinn – gå tilbake og kontroller at alle banene er riktige.
Sikring av AWStats
Unnlatelse av å sikre statistikksiden din kan føre til dårlige ting, for eksempel henvisende spam . Dessuten vil du ikke at de detaljerte analysedataene dine skal eksponeres for hele Internett.
Vi bruker Nginx til å sette et passord på statistikksiden. Åpne /etc/nginx/nginx.configjen, gå tilbake til delen du la til, og legg til følgende linjer under location /webstats/ {:
auth_basic "Username and password required to access AWStats";
auth_basic_user_file /etc/nginx/.htpasswd;
Nå må vi lage den .htpasswdfilen. Avslutt konfigurasjonsfilen og kjør følgende kommando:
sudo htpasswd -c /etc/nginx/.htpasswd <username>
Brukernavnet ditt kan stort sett være hva som helst, men det skal ikke inneholde mellomrom og skal være unikt, ikke noe som er lett å gjette som admineller webmaster. Når du kjører kommandoen, blir du bedt om et passord. Skriv inn et sikkert passord, og bekreft det.
Last inn Nginx på nytt:
sudo systemctl restart nginx
Prøv å få tilgang til AWStats igjen. Denne gangen vil du bli spurt om brukernavn og passord. Skriv inn dem og du vil bli sendt til AWStats hjemmeside som før.
Kjøre AWStats daglig og når logger roteres
Til slutt trenger vi statistikken vår for å oppdateres. Det skal vi bruke crontil. Det er et oppgaveplanleggerverktøy, og det er forhåndsinstallert på Fedora (og de fleste andre Linux-distribusjoner). Vi kjører AWStats hver dag ved midnatt. Rediger /etc/crontabog legg til følgende linje nederst:
0 0 * * * nginx /usr/share/awstats/wwwroot/cgi-bin/awstats.pl -config=<yoursitename>
For å unngå å miste data, vil vi også at AWStats skal kjøres når loggene roteres. For å gjøre det, rediger /etc/logrotate.d/nginx. postrotateLegg til følgende over delen:
prerotate
/usr/share/awstats/wwwroot/cgi-bin/awstats.pl -config=<yoursitename>
endscript
AWStats er nå konfigurert og klar til bruk.