Creare pagine di errore con htaccess

Creare delle pagine di errore per gli status code con Apache e htaccess è un gioco da ragazzi.
Gli errori che il server riscontra vengono segnalati da pagine apposite del server con dei codici di errore detti status code che identificano numericamente il tipo di errore riscontrato.

Il file .htaccess è un file di testo in formato ASCII che detta delle istruzioni al webserver . Serve a stabilire delle regole che valgono per la directory (e i file) in cui è inserito e le sue sottodirectory (salvo impostare regole specifiche nelle sottodirectory).

Gli status codes si dividono nelle seguenti 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)

L’errore più frequente è di sicuro il 404 che indica che il server non riesce a trovare l’indirizzo specificato. Capita spesso di sbagliare la formattazione di un link o di inserire manualmente un link non corretto.
Un altro caso d’uso frequente si ha con lo stato 301 utilizzato per reindirizzare i visitatori di un sito verso una certa pagina. A volte, infatti, capita di dover modificare l’indirizzo di una pagina web ma di aver già pubblicizzato la stessa con l’URL precedente o magari si vuole reindirizzare un intero sito da un’altra parte.
Ci sono molti casi di utilizzo di htaccess e in quasi tutti si utilizza la direttiva ErrorDocument seguita dal codice di stato e dal documento di redirezione/gestione.

Potremmo, ad esempio, gestire gli errori più comuni reindirizzando i visitatori delle nostre pagine web su delle semplici pagine in puro html contenute nella cartella /errori/ sul nostro spazio.
Così dovremmo solo preoccuparci di creare un file .htaccess nella root / del nostro sito come segue:

ErrorDocument 400 http://psw.netsons.org/errore/errore400.htm
ErrorDocument 401 http://psw.netsons.org/errore/errore401.htm
ErrorDocument 403 http://psw.netsons.org/errore/errore403.htm
ErrorDocument 404 http://psw.netsons.org/errore/errore404.htm
ErrorDocument 500 http://psw.netsons.org/errore/errore500.htm

Con .htaccess è anche possibile evitare il browsing delle directory con il seguente codice:

Options All -Indexes

Utilizzando poi il mod_rewrite di Apache si possono rendere user-friendly degli URL usati spesso come le pagine di informazioni e i guest book. Un esempio per chiarirci le idee:

RewriteEngine on
RewriteRule ^about/$    /pages/about.html [L]
RewriteRule ^features/$ /features.php [L]
RewriteRule ^buy/$      /buy.html [L]
RewriteRule ^contact/$  /pages/contact.htm [L]

Digitando adesso tuosito/about si verrà reindirizzati su /pages/about.html e così via.

Via Mondycode.com – Life is a flash

Risorse
[1] Status code definition
[2] I file .htaccess in Apache
[3] .htaccess e passwords
[4] Apache tutorial: .htaccess files
[5] .htaccess demo
[6] .htaccess generator
[7] .htaccess tools

tags Tags:
categorieCategorie: Internet

Forge Of Empires Italia

Comments are closed.