Errori e MIME
Errori
Log degli Errori
File e Livello di Logging
Parametri:
ErrorLog logs/error.log- file di log, sottoServerRootLogLevel warn- sono loggati gli errori uguali o superiori a questo livello di severità- possibilità, in ordine crescente di severità:
debug, info, notice, warn, error, crit, alert, emerg
- possibilità, in ordine crescente di severità:
Formato dei Log
Ogni evento di log è una singola linea. Quali siano gli elementi su tale linea dipende dal formato del log.
Sono definiti tre formati:
common- tradizionale, più cortocombined- con più informazionicombinedio- con anche informazioni di input e output
<IfModule log_config_module>
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
LogFormat "%h %l %u %t \"%r\" %>s %b" common
<IfModule logio_module>
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %I %O" combinedio
</IfModule>
#CustomLog logs/access.log common
CustomLog logs/access.log combined
</IfModule>
Gli elementi del log sono rappresentati da segnalini
| Segnalino | Elemento |
|---|---|
| %h | indirizzo IP del client |
| %l | un trattino (-) |
| %u | nome utente, o trattino se manca |
| %t | timestamp |
| %r | richiesta |
| %>s | stato del responso |
| %b | dimensione dell'oggetto ritornato |
| %I | bytes ricevuti |
| %O | bytes inviati |
| %{Referer}i | referer - indirizzo da cui la richiesta è provenuta tramite un link |
| %{User-Agent}i | informazioni sul browser |
Esempio di linea log combinedio:
81.95.52.96 - - [12/Oct/2012:11:25:58 +0100] "GET /docs HTTP/1.1" 200 3623
"http://webarch.net/docs/hosting-logs" "Mozilla/5.0 (X11; Linux i686; rv:15.0)
Gecko/20100101 Firefox/15.0.1" 1224 6793
Errori Customizzabili
Esempi:
ErrorDocument 500 "The server made a boo boo."- testo direttoErrorDocument 404 /missing.html- pagina statica localeErrorDocument 404 "/cgi-bin/missing_handler.pl"- programma CGI di gestioneErrorDocument 402 http://www.example.com/subscription_info.html- pagina remota
Gestione MIME
Il Multimedia Internet Message Extensions identifica files non US ASCII.
Ognuno di tali files ha una possibile codifica, handler di gestione, filtro di output.
Il seguente è un estratto del segmento di configurazione:
<IfModule mime_module>
TypesConfig /etc/apache2/mime.types
#AddEncoding x-compress .Z
#AddEncoding x-gzip .gz .tgz
AddType application/x-compress .Z
AddType application/x-gzip .gz .tgz
#AddHandler cgi-script .cgi
#AddHandler type-map var
#AddType text/html .shtml
#AddOutputFilter INCLUDES .shtml
</IfModule>
Ove:
TypesConfig /etc/apache2/mime.types- file di definizione dei tipi MIME#AddEncoding x-compress .Z- aggiunta di una codificaAddType application/x-compress .Z- aggiunta del tipo MIME corrispondente alla codificaAddType application/x-gzip .gz .tgz- aggiunta di un tipo MIME#AddHandler cgi-script .cgi- aggiunta di uno handler: tutti i files con estensione.cgi, nella directory appropriata definita altrove, sono programmi con interfaccia CGI#AddHandler type-map var- aggiunta di una mappa (opzione negoziabile)#AddType text/html .shtml- l'estensione.shtmlidentifica un file HTML#AddOutputFilter INCLUDES .shtml- l'estensione.shtmlinvoca il filtro Server Side Includes