AwstatConfig » Cronologia » Versione 11
Amministratore Truelite, 05-05-2010 20:32
1 | 3 | Amministratore Truelite | [[TracNav(TOC)]] |
---|---|---|---|
2 | 5 | Amministratore Truelite | == Configurare AWStats == |
3 | 3 | Amministratore Truelite | |
4 | 1 | Amministratore Truelite | Uno dei programmi più interessanti per la gestione delle statistiche dei siti |
5 | web è [http://awstats.sourceforge.net/ AWStats], che su una Debian può essere |
||
6 | installato semplicemente con: |
||
7 | {{{ |
||
8 | apt-get install awstats |
||
9 | }}} |
||
10 | 9 | Amministratore Truelite | oltre a questo comunque, per poter utilizzare i plugin più interessanti, occorrerà anche installare i seguenti pacchetti: |
11 | {{{ |
||
12 | 11 | Amministratore Truelite | apt-get install libgeo-ipfree-perl liburi-perl libnet-xwhois-perl |
13 | 9 | Amministratore Truelite | }}} |
14 | 2 | Amministratore Truelite | |
15 | 7 | Amministratore Truelite | Con la configurazione di default si potranno raggiungere le statistiche |
16 | all'indirizzo web {{{http://www.sito.it/cgi-bin/awstats.pl}}}, si tenga |
||
17 | presente però che per una visualizzazione corretta delle varie icone ed |
||
18 | 8 | Amministratore Truelite | immagini usate dal programma (che sono sotto {{{/usr/share/awstats/icon/}}}) |
19 | 7 | Amministratore Truelite | occorre definire un opportuno ''alias'' nella configurazione di Apache, |
20 | inserendo una riga come la seguente nella configurazione dei virtual host dei |
||
21 | siti che lo utilizzano: |
||
22 | {{{ |
||
23 | Alias /awstats-icon/ /usr/share/awstats/icon/ |
||
24 | }}} |
||
25 | |||
26 | 2 | Amministratore Truelite | Una volta installato la configurazione deve essere effettuata con i file |
27 | presenti in {{{/etc/awstats}}}. Il pacchetto Debian installa già un suo |
||
28 | {{{awstats.conf}}} che viene utilizzato di default, ed è sufficiente qualora |
||
29 | si abbia un singolo sito da tenere sotto controllo. |
||
30 | |||
31 | Se però si hanno vari ''virtual host'' es si gestiscono più siti per ciascuna |
||
32 | macchine si deve usare un file di configurazione per ogni sito che si vuole |
||
33 | tenere sotto osservazione. Per gestire questa configurazione il pacchetto |
||
34 | 1 | Amministratore Truelite | Debian fornisce alcuni script di ausilio, ma questi richiedono che detti file |
35 | 7 | Amministratore Truelite | abbiano un nome nella forma ''awstats.www.sito.it.conf'' (ad esempio |
36 | 2 | Amministratore Truelite | {{{awstats.www.fountainpen.it.conf}}}). |
37 | |||
38 | All'interno di ciascuno di questi file occorrerà specificare dove si trovano |
||
39 | le statistiche e per quale sito esse sono raccolte, per quanto riguarda le |
||
40 | statistiche occorre specificare in quale file sono mantenuti log di accesso ad |
||
41 | Apache per il sito voluto con la direttiva {{{LogFile}}}, con qualcosa del |
||
42 | tipo: |
||
43 | {{{ |
||
44 | LogFile="/var/log/apache2/fountainpen.it-access.log" |
||
45 | }}} |
||
46 | dove il file dei log deve essere stato opportunamente generato in maniera |
||
47 | separata per il sito in questione, ad esempio inserendo la riga seguente |
||
48 | nella definizione del relativo virtual host di Apache: |
||
49 | {{{ |
||
50 | CustomLog /var/log/apache2/fountainpen.it-access.log combined |
||
51 | }}} |
||
52 | |||
53 | 1 | Amministratore Truelite | La seconda direttiva è da utilizzare è {{{SiteDomain}}} che indica il nome di |
54 | 6 | Amministratore Truelite | dominio per il sito in questione, che andrà impostata con qualcosa del tipo: |
55 | {{{ |
||
56 | SiteDomain="www.fountainpen.it" |
||
57 | }}} |
||
58 | 2 | Amministratore Truelite | |
59 | Si tenga conto che il programma è pensato per aggiornare le statistiche in |
||
60 | maniera incrementale, esso cioè legge dal file di log solo le voci relativi ad |
||
61 | 1 | Amministratore Truelite | accessi più recenti rispetto agli ultimi che ha classificato. Questo significa |
62 | che il programma deve essere fatto eseguire periodicamente tramite ''cron'', |
||
63 | in modo da aggiornare le statistiche. |
||
64 | 6 | Amministratore Truelite | |
65 | Il pacchetto Debian installa già uno script per AWStats in |
||
66 | {{{/etc/cron.d/awstats}}}, che lancia lo script in modalità di aggiornamento, |
||
67 | ma il default lo esegue solo per un singolo sito. Con Debian viene però |
||
68 | distribuito anche uno script che consente di effettuare la stessa operazione |
||
69 | per una serie di siti, posto che si siano create le rispettive configurazione |
||
70 | con la convenzione esposta in precedenza. Il file si trova sotto |
||
71 | {{{/usr/share/doc/awstats/examples/awstats-update}}}, ma conviene copiarselo |
||
72 | altrove (ad esempio sotto {{{/usr/local/bin}}}), dopo di che si dovrà |
||
73 | ritoccare il precedente script di cron per renderlo qualcosa del tipo: |
||
74 | {{{ |
||
75 | 0,10,20,30,40,50 * * * * www-data /usr/local/bin/awstats-update |
||
76 | }}} |
||
77 | |||
78 | Si deve inoltre avere cura di far sì che i file di log siano leggibili dal |
||
79 | programma, che essendo uno script CGI gira con i privilegi del server web, |
||
80 | mentre in genere i log non sono leggibili da esso, per questo occorrerà |
||
81 | 10 | Amministratore Truelite | aggiustarne i permessi, ed assicurarsi che tali restino nella loro rotazione, |
82 | 6 | Amministratore Truelite | per questo sarà opportuno modificare in {{{/etc/logrotate.d/apache2}}} la riga |
83 | seguente: |
||
84 | {{{ |
||
85 | create 640 root www-data |
||
86 | }}} |
||
87 | |||
88 | Qualora si vogliano ottenere le statistiche per un sito che era già attivo |
||
89 | prima dell'installazione di AWStats le cose si complicano, dato che questo |
||
90 | gestisce gli aggiornamenti in maniera incrementale, per cui leggerà solo dal |
||
91 | 10 | Amministratore Truelite | log corrente e non da quelli che sono stati ruotati in precedenza. |
92 | 6 | Amministratore Truelite | |
93 | Per risolvere questa situazione si può utilizzare un altro script fornito con |
||
94 | il pacchetto Debian, {{{/usr/share/doc/awstats/examples/logresolvemerge.pl}}} |
||
95 | (su Etch il file è codificato in DOS, occorre eseguire una conversione con il |
||
96 | comando {{{fromdos}}} del pacchetto {{{tofrodos}}} (o a mano con {{{tr}}}). In |
||
97 | questo caso ci si potrà generare un singolo file contenente tutti i dati |
||
98 | ordinati correttamente con qualcosa del tipo: |
||
99 | {{{ |
||
100 | cd /usr/share/doc/awstats/examples/ |
||
101 | ./logresolvemerge.pl /var/log/apache2/fountainpen.it-access.* > /root/access.log |
||
102 | }}} |
||
103 | |||
104 | A questo punto si potranno importare tutti i dati correttamente correggendo il |
||
105 | file di configurazione per utilizzare questo file, inserendovi temporaneamente |
||
106 | la direttiva: |
||
107 | {{{ |
||
108 | LogFile="/root/access.log" |
||
109 | }}} |
||
110 | ed eseguendo a mano il comando: |
||
111 | {{{ |
||
112 | /usr/lib/cgi-bin/awstats.pl -config=www.fountainpen.it -update |
||
113 | }}} |
||
114 | si ricordi di ripristinare il valore corretto della direttiva {{{LogFile}}} |
||
115 | una volta importati i dati. |
||
116 | |||
117 | Si tenga presente però che se per sbaglio è stato tentato un update prima di |
||
118 | questa operazione, AWStats avrà già registrato alcuni dati statistici, e |
||
119 | siccome lo script funziona sempre in modalità di aggiornamento, il precedente |
||
120 | comando non aggiungerà i dati risalenti ad accessi anteriori a quelli già |
||
121 | presenti nelle statistiche. Per risolvere questo inconveniente sarà necessario |
||
122 | rimuovere i file creati sotto {{{/var/lib/awstats}}} che contengono la storia |
||
123 | delle statistiche, e rigenerarli dal file completo creato con la procedura |
||
124 | appena illustrata. Questi sono con nomi nella forma |
||
125 | {{{awstatsMMYYYY.www.sito.it.txt}}} |