Vediamo ora qualche esempio per chiarire le cose:
ErrorDocument 500 "Lo script richiesto non ha potuto essere eseguito per problemi interni".
In questo caso, in presenza di un "Error 500" avverte il visitatore
che lo script chiamato dal suo browser ha avuto dei problemi
nell'esecuzione e l'output non può essere visualizzato. Questo è un
tipico esempio di messaggio d'errore in forma semplicemente testuale.
ErrorDocument 500 http://www.altro_server/cgi-bin/script.cgi
In questo secondo caso ci troviamo di fronte ad una redirezione esterna,
che porterà il visitatore (in maniera totalmente trasparente, a parte
l'indirizzo nel browser) ad un host esterno dove verrà eseguito lo
stesso script che questi avrebbe voluto veder eseguito sull'host
originario. Questo esempio può essere utile per dimostrare come può
essere fatto un uso intelligiente delle redirezioni esterne: sarebbe
buona norma, però, controllare (a livello di codice dello script CGI)
l'URL dalla quale proviene il visitatore e, nel caso questa combaci con
quella dell'host originario (quello in cui egli ha tentato di eseguire
lo script) mandare in output un messaggio che lo avverta di cosa è
avvenuto e del perchè la sua richiesta è stata spostata su un diverso
host. Questioni di cortesia verso gli utenti smarriti.
ErrorDocument 404 /missing.html
Se preparate una pagina chiamata "missing.html", per ogni errore 404
(Url not found) verrà visualizzata questa pagina, dove potrete personalizzare
nel modo che vi sembra più opportuno. È chiaro che siamo anche qui di
fronte ad una redirezione interna. È da notare, inoltre, che è possibile
redirigere il visitatore a qualsiasi tipo di pagina, sia un plain text che in
html, sia contenete uno script che contenente degli includes: se la pagina
predefinita (missing.html) è corretamente scritta, non ci sarà alcun
problema per il server ad interpretarla in quanto essa è vista come una
semplice pagina da inviare al browser dell'utente.