Statistiche web · 5 min read · Nov 26, 2025

Generazione di statistiche del sito web con AWStats e JAWStats su Debian Lenny

Generazione di statistiche del sito web con AWStats e JAWStats su Debian Lenny

Versione 1.0
Autore: Falko Timme
Seguimi su Twitter

Questo tutorial spiega come puoi generare statistiche per il tuo sito web con AWStats e JAWStats su un server web Debian Lenny. AWStats è uno strumento gratuito, potente e ricco di funzionalità che genera statistiche avanzate del server web. JAWStats funziona in congiunzione con AWStats e produce grafici, diagrammi e tabelle chiari e informativi sui visitatori del tuo sito web. AWStats è in grado di creare pagine web grafiche per le statistiche, ma JAWStats presenta questi dati in un modo molto più gradevole: è molto meglio organizzato e utilizza Ajax e Flash.

Non fornisco alcuna garanzia che questo funzionerà per te!

1 Nota preliminare

In questo tutorial ho un sito web www.example.com (con gli alias example.com, www.example.net e example.net) con la radice del documento /var/www/www.example.com/web.

2 Installazione e configurazione di AWStats

AWStats può essere installato come segue:

aptitude install awstats

La sua configurazione si trova nella directory /etc/awstats/. Per ogni host virtuale dobbiamo avere un file di configurazione chiamato awstats..conf in quella directory (cioè, per il nostro sito web www.example.com abbiamo bisogno del file di configurazione awstats.www.example.com.conf). Possiamo usare il file /etc/awstats/awstats.conf come modello:

cd /etc/awstats/
cp awstats.conf awstats.www.example.com.conf
vi awstats.www.example.com.conf

Modifica le seguenti impostazioni:

| [...] LogFile="/var/log/apache2/access.log" [...] LogFormat=1 [...] SiteDomain="www.example.com" [...] HostAliases="example.com www.example.net example.net" [...] |

LogFile deve contenere il percorso al log degli accessi di Apache del tuo host virtuale o il log degli accessi Apache complessivo (quello per tutti i siti; AWStats è in grado di filtrare i record che non appartengono al tuo sito web). Se hai un nome di file dinamico (ad esempio perché contiene una data, per esempio perché il tuo log degli accessi è creato da cronolog o vlogger), puoi usare segnaposto, ad esempio in questo modo:

LogFile="/var/log/httpd/access.log_%YYYY-0_%MM-0_%DD-0"

Questo è spiegato nei commenti nel file di configurazione di AWStats come segue:

“LogFile” contiene il file di log del server web, ftp o mail da analizzare.
Valori possibili: Un percorso completo, o un percorso relativo dalla directory awstats.pl.
Esempio: “/var/log/apache/access.log”
Esempio: “../logs/mycombinedlog.log”
Puoi anche usare tag in questo nome di file se hai bisogno di un nome di file dinamico
dipendente dalla data o dall’ora (la sostituzione viene effettuata da AWStats all’inizio
della sua esecuzione). Questi sono i tag disponibili:
%YYYY-n è sostituito con l’anno di 4 cifre che avevamo n ore fa
%YY-n è sostituito con l’anno di 2 cifre che avevamo n ore fa
%MM-n è sostituito con il mese di 2 cifre che avevamo n ore fa
%MO-n è sostituito con il mese di 3 lettere che avevamo n ore fa
%DD-n è sostituito con il giorno che avevamo n ore fa
%HH-n è sostituito con l’ora che avevamo n ore fa
%NS-n è sostituito con il numero di secondi a 00:00 dal 1970
%WM-n è sostituito con il numero della settimana nel mese (1-5)
%Wm-n è sostituito con il numero della settimana nel mese (0-4)
%WY-n è sostituito con il numero della settimana nell’anno (01-52)
%Wy-n è sostituito con il numero della settimana nell’anno (00-51)
%DW-n è sostituito con il numero del giorno nella settimana (1-7, 1=domenica)
usa n=24 se hai bisogno (1-7, 1=lunedì)
%Dw-n è sostituito con il numero del giorno nella settimana (0-6, 0=domenica)
usa n=24 se hai bisogno (0-6, 0=lunedì)
Usa 0 per n se hai bisogno dell’anno, mese, giorno, ora… attuale
Esempio: “/var/log/access_log.%YYYY-0%MM-0%DD-0.log”
Esempio: “C:/WINNT/system32/LogFiles/W3SVC1/ex%YY-24%MM-24%DD-24.log”
Puoi anche usare una pipe se il file di log proviene da una pipe:
Esempio: “gzip -d Se ci sono più file di log da server di bilanciamento del carico:
Esempio: “/pathtotools/logresolvemerge.pl *.log |”

Probabilmente stai usando il formato di log combinato di Apache, quindi dovresti usare LogFormat=1 (ancora una volta, dai un’occhiata ai commenti nel file per scoprire il formato corretto, ma nella maggior parte dei casi stai usando il formato di log combinato di Apache).

SiteDomain: Specifica il dominio principale del tuo sito web ( www.example.com in questo caso).

HostAliases: Specifica tutti gli altri domini/sottodomini utilizzati per accedere al tuo sito web ( example.com, www.example.net, example.net in questo esempio).

Successivamente creiamo un lavoro cron per eseguire AWStats ogni nove minuti:

crontab -e  

| 9,19,29,39,49,59 * * * * /usr/lib/cgi-bin/awstats.pl -config=www.example.com -update >/dev/null |

(Se hai un log degli accessi dinamico, come creato da cronolog o vlogger, è una buona idea includere il minuto 59 nel lavoro cron in modo che AWStats possa elaborare il log degli accessi corrente alle 23:59 prima che un nuovo log degli accessi venga creato a 0:00 - in questo modo, perdi solo il minuto tra le 23:59 e le 0:00 nelle tue statistiche.)

3 Installazione e configurazione di JAWStats

Vai su http://www.jawstats.com/download, scarica l’ultima versione di JAWStats, decomprimila sul tuo PC e caricala in una directory all’interno del tuo sito web www.example.com, ad esempio con FTP. In questo tutorial la carico nella directory /var/www/www.example.com/web/jawstats.

Successivamente, dobbiamo rinominare config.dist.php in config.php e modificarlo:

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" => "Il mio sito web Example.com", "theme" => "default", "fadespeed" => 250, "password" => "secret", "includes" => "", "language" => "en-gb" ); ?> |

Se vuoi rimuovere il link “cambia sito”, cambia $bConfigChangeSites in false.

Se non vuoi che i tuoi utenti possano aggiornare le statistiche da soli, imposta $bConfigUpdateSites su false.

Dopo di che, abbiamo l’array $aConfig[“site1”] - rinominalo in modo che sia chiamato come il tuo sito ( $aConfig[“www.example.com”]). Imposta statspath su /var/lib/awstats/ (non dimenticare la barra finale!), updatepath su /usr/lib/cgi-bin/, siteurl su http://www.example.com, e specifica il nome del tuo sito web sotto sitename. Una password è necessaria solo se hai impostato $bConfigUpdateSites su true (se consenti ai tuoi utenti di aggiornare le statistiche tramite il browser, dovranno digitare questa password).

Questo è tutto - dopo che il lavoro cron di AWStats è stato eseguito per la prima volta (il che può richiedere molto tempo per i siti web con molto traffico, quindi sii paziente), puoi accedere alle tue statistiche su http://www.example.com/jawstats.

Ecco alcuni screenshot di come potrebbe apparire:

4 Proteggere con password la directory di output di JAWStats (opzionale)

Ora è una buona idea proteggere con password la directory /var/www/www.example.com/web/jawstats a meno che tu non voglia che chiunque possa accedere alle statistiche del tuo sito web.

Per fare ciò, creiamo un file .htaccess in /var/www/www.example.com/web/jawstats:

vi /var/www/www.example.com/web/jawstats/.htaccess

| AuthType Basic AuthName "Solo membri" AuthUserFile /var/www/www.example.com/.htpasswd require valid-user |

Poi dobbiamo creare il file di password /var/www/www.example.com/.htpasswd. Vogliamo accedere con il nome utente admin, quindi facciamo così:

htpasswd -c /var/www/www.example.com/.htpasswd admin

Inserisci una password per admin, e hai finito!

5 Link

Share: X/Twitter LinkedIn

Ricevi i nuovi post nella tua casella di posta.

Nessuno spam. Disiscriviti in qualsiasi momento.