I cookie permettono il funzionamento di alcuni servizi di questo blog. Utilizzando questi servizi, accetti l'utilizzo dei cookie da parte nostra. Ok Rifiuta

Come realizzare l'url-rewriting con il file.htaccess

Sicuramente vi è capitato di vedere, in molte piattaforme per la realizzazione di blog come Wordpress, degli url particolari. Mi riferisco non ai soliti www.sito.it/chisiamo.php ma a degli url ottimizzati con il titolo della pagina che andiamo a vedere. Per esempio se andiamo a vedere un articolo intitolato "articolo esempio" in un blog, vedremo che nell'url ci sarà scritto www.sito.com/articolo-esempio oppure www.sito.com/articolo-esempio.html . Ovviamente la pagina vera che richiameremo non si chiama articolo-esempio.html ma si chiamerà diversamente a seconda dell'implementazione in php o html statico. Quindi la domanda è: come è possibile ottimizzare in questo modo gli url, anche in termini di ottimizzazione SEO per i motori?

La risposta è molto semplice: c'é un modulo in Apache chiamato mod_rewrite che se attivato, consente di modificare gli url ottimizzandoli per la SEO del vostro blog. Possiamo istruire il mod_rewrite con le regole di riscrittura degli url tramite un file chiamato .htaccess. Come si creano queste regole? Di seguito facciamo un esempio:

supponiamo di avere un url scritto in questo modo:

www.sito.com/articolo.php?articolo=titolo-articolo

e vogliamo farlo diventare:

www.sito.com/titolo-articolo.html

Per fare questo giochetto dovremo creare prima un file con estensione .htaccess, poi dovremo abilitare il modulo mod_rewrite sul server (fate riferimento alla guida del vostro hosting se non è già attivato). Fatto questo scriviamo nel file .htaccess:

RewriteEngine On //attiviamo il modulo
RewriteBase /  //gli diciamo la base url di partenza
RewriteRule ^([^/]+)\.html$ articolo.php?articolo=$1 //regola di trasformazione

Con la regola di trasformazione sopra stiamo dicendo che ogni url che finisce in .html deve essere reindirizzato sulla pagina articolo.php, passandole come parametro il titolo o tag dell'articolo prima della dicitura .html, nel nostro caso titolo-articolo diventerà il parametro. I simboli prima di .html (che identificano il titolo dell'articolo) sono l'insieme di un'espressione regolare che raccoglie tutti i caratteri con cui si può comporre un url. Il $1 si riferisce al contenuto dell'url prima di .html.

Quindi ogni volta che mettiamo un url con un .html finale, il mod_rewrite ci redirigerà nella pagina effettiva passandole il titolo dell'articolo come parametro.

Per approfondire in dettaglio il componente vi rimando al sito www.html.it in cui è spiegato scendendo nei dettagli ciò che abbiamo visto sopra.

Seguici su Facebook

Seguici su Google+

Renzo Cappelli

miafoto

Sono un appassionato di informatica, mi dedico allo sviluppo web e alla gestione dei sistemi web-based: realizzo siti e progetto software gestionale per privati e aziende. Ho tanta passione per tutto quello che riguarda il web e le nuove tecnologie, lavoro bene in team e collaboro con aziende e professionisti di settore.

Commenti

NON CI SONO ANCORA COMMENTI.

Lascia il tuo commento