In questa esercitazione si approfondisce la conoscenza e l'uso dei log su Apache.
1- Lanciare Apache con la configurazione di default (/etc/httpd/conf/httpd.conf
), tramite il comando lsof
, visualizzare su quali file il proprio Apache sta loggando
2- Verificare quanto visualizzato analizzando la propria httpd.conf
3- Stoppare Apache e iniziare a lavorare sul file di conf alternativo httpd2.conf
. Modificare httpd2.conf per loggare un proprio custom log che contiene ogni informazione possibile.
Ricordarsi che la gestione dei log viene fatta tramite il modulo mod_log_config che pertanto va caricato nel file di configurazione.
4- Verificare con un tail -f
mentre si naviga sul proprio server web come e cosa si logga
5- Usando il proprio custom log, configurare Apache per non loggare le GET a immagini gif e jpg
6- Impostare il massimo livello di debugging possibile sul proprio error log
1- lsof | grep httpd | grep log
(Notare che con questo sistema non vengono visualizzati eventuali log che non contengono le lettere "log"
2- Controllare in httpd.conf le direttive ErrorLog
, CustomLog
e AccessLog
.
3- Impostare su proprio httpd2.conf qualcosa tipo LogFormat "%h %l %u %t \"%r\" %U %>s %b %f %a %A %p %P %v %V \"%{Referer}i\" \"%{User-Agent}i\"" completo
(Loggare alcune di queste informazioni è ridondante ed eccessivo.
Definire il file dove loggare con CustomLog /var/log/httpd/inutile_log completo
.
Per far loggare ad Apache qualcosa di più del solo error_log è necessario il modulo mod_log_config.
Assicurarsi che sia presente e non sia commentata la riga LoadModule access_module modules/mod_log_config.so
.
Se si lavora con Apache 1.3, devono essere presenti le righe:
LoadModule access_module libexec/mod_log_config.so
AddModule mod_log_config.c
4- tail -f /var/log/httpd/inutile_log
(Ricordarsi di riavviare Apache ogni volta che si cambia la configurazione)
5- Aggiungere alla propria httpd2.conf qualcosa tipo: SetEnvIf Request_URI \.gif$ image=gif
SetEnvIf Request_URI \.jpg$ image=jpg
CustomLog /var/log/httpd/senzaimmagini_log completo env=!image
6- Impostare in httpd2.conf LogLevel debug
Configurazione, analisi e gestione dei log di un server Web. Software di analisi dei log.