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