Non sei loggato | Register | Login

Personalizzare i messaggi d’errore con .htaccess di Apache Aggiungi

Tutorials / Apache

Introduzione

Prima di iniziare questo breve tutorial, introduciamo il concetto di status code che in parole povere permette di capire ai clients qual'è il risultato della transazione appena effettuata.
I codici di stato sono divisi principalmente in 5 categorie:

  • Informational Status Codes (100-199)
  • Success Status Codes (200-299)
  • Redirection Status Codes (300-399)
  • Client Error Status Codes (400-499)
  • Server Error Status Codes (500-599)

Chiarisco subito che tutti gli esempi si riferiranno al codice d'errore 404 ma è possibile applicare le stesse conoscenze anche agli altri codici indicanti anomalie o problemi di ogni sorta.

Personalizziamo l'errore 404

Questo tipo di errore si presenta nel caso in cui l'URL richiesto non può essere trovato (ossia quando facciamo riferimento ad un link vecchio che non esiste più o che è stato spostato).
Di default la pagina d'errore che Apache fa apparire non è molto utile ai fini della navigazione visto che si limita a dare una breve spiegazione della tipologia d'errore senza aiutare l'utente a porne rimedio (se esiste), quindi può nascere l'esigenza di volerlo personalizzare.
Nel momento in cui Apache si trova di fronte a voler comunicare un errore/problema, può fare le seguenti cose:

  • Visualizzare un breve messaggio con il codice d'errore
  • Visualizzare un messaggio personalizzato
  • Redirezionare ad un URL locale la cattura dell'errore
  • Redirezionare ad un URL esterno la cattura dell'errore

La prima opzione della lista è quella scelta di default da Apache però tramite l'utilizzo del file .htaccess (o in generale il file che indichiamo nella direttiva AccessFileName nel file di configurazione di Apache) possiamo cambiare le carte in tavola.
Per personalizzare i vari messaggi d'errore si utilizza la direttiva errorDocument che permette di indicare la pagina (o il messaggio) da visualizzare quando avviene un errore.
La sintassi generalizzata di questa direttiva è la seguente:

ErrorDocument codice-di-stato documento

Per capire più a fondo l'utilizzo di questa direttiva vediamone alcuni esempi:

  1. ErrorDocument 404 "Risorsa non trovata"

In questo caso viene visualizzata la stringa "Risorsa non trovata".

  1. ErrorDocument 404 /modifica/errore404.html

Alla presenza dell'errore 404 si viene rimandati all'URL relativo "/modifica/errore404.html"; inoltre è possibile utilizzare un URL assoluto sia locale sia esterno al proprio dominio.

Concludiamo

La possibilità di poter modificare i messaggi d'errore ci permette di creare un sito molto più accessibile e usabile visto che possiamo aiutare l'utente a trovare proprio ciò che cercava.
Possiamo fare in modo che la pagina d'errore sia una pagina dinamica che mandi una mail a noi stessi (con referer e link errato), così possiamo sapere eventuali link non esistenti o link errati da altri siti.
Insomma, si possono fare una miriade di cose, basta avere la volontà di farle ;)

Fonti

Libri:

  • Apache The Definitive Guide
  • HTTP The Definitive Guide

Daniele Simonin 14 September 2005 alle 19:05 Trackback URI

Scrivi un commento

Tags di formattazione:










* Sono ammessi solo commenti contenenti opinioni, correzioni e ogni forma di supporto al tutorial; è quindi vietato porre quesiti personali.

Leggi l'unico commento presente fin'ora

perfetto, funziona alla grande... grazie per il suggerimento :)

Commento di Francesco 29 November 2007 alle 11:42

Feed

infoPillole (by Wikipedia)

Ultimi commenti

  • Flavio: bella questa!
  • Beta: Thank you.Beautiful CSS form“
  • Daniele Simonin: Per guadagnare molti usano questa...
  • Luca: Per guadagnare bisogna lavorare, io ho raccolto un...
  • Daniele Simonin: Ti ringrazio :) Ad ogni modo non voglio...

Calendario

July 2010
M T W T F S S
« Jun    
 1234
567891011
12131415161718
19202122232425
262728293031  

Archivio

Categorie

Tutorials casuali

Ultime news

Progetti

Alcuni miei lettori