1. Introduzione al mod_rewrite di Apache
Il mod_rewrite di Apache è uno dei moduli più utilizzati tra quelli disponibili per questo Web server, in particolare per il fatto di mettere a disposizione dei Webmasters uno strumento che permetta da una parte di creare siti basati su applicazioni web based dinamiche e dall'altra di rendere le pagine prodotte dall'applicazione più "digeribili" per i motori di ricerca.
Ma qual'è la funzione di questo modulo? In pratica il mod_rewrite consente di "tradurre" un'URL in un'altra definita dall'utilizzatore seguendo determinate regole che vanno scritte all'interno del file di configurazione di Apache oppure dentro ad un apposito file, denominato .htaccess, che andrà uploadato all'interno della root del nostro sito web (anche l'upload di questo file deve essere effettuato seguendo determinati criteri, ma approfondiremo questo discorso tra breve).
Un caso classico di utilizzo del mod_rewrite è quello relativo alla traduzione di URL statiche in dinamiche; badate bene che questo concetto è fondamentale, infatti il modulo non nasce per trasformare indirizzi dinamici (contenenti querystring) in statici, bensì per il contrario! Il motore di ricerca ed i nostri utenti vedranno una URL di tipo statico (pippo.html), ma in realtà la risorsa esiste sotto un indirizzo dinamico (pagina.php?id=pippo).
Per far questo scriveremo la nostra regola di traduzione all'interno del file .htaccess e uploaderemo quest'ultimo nel percorso desiderato (cioè quello per cui sono valide le regole di rewrite); da quel momento in poi per le pagine coinvolte avverranno i seguenti passaggi per il nostro Web Server:
Ma perchè mascherare un'URL? Oggi come oggi i motivi vanno ricercati in fattori che spesso non attengono ad argomenti strettamente tecnici o relativi allo sviluppo delle applicazioni.
Inizialmente il mod_rewrite era nato per ovviare al problema delle URL troppo lunghe da digitare, capitava infatti (e spesso capita ancora) che per raggiungere una detrminata risorsa si dovessero digitare querystring strapiene di variabili e di relativi parametri; il rewrite consente di eliminare questo problema grazie alla possibilità di mettere a disposizione dei clients URL più user friendly.
Oggi il rewrite è diventato invece un argomento molto importante per operazioni riguardanti il posizionamento delle pagine Web nei motori di ricerca.
E' noto infatti che questi ultimi non indicizzano in modo efficiente le pagine raggiungibili con querystring troppo lunghe o troppo ricche di parametri, questo fattore può limitare la capacità di posizionamento di una risorsa all'interno delle SERP.
In pratica possiamo affermare che ciò che è user friendly per gli utenti lo è anche per i motori di ricerca.
| Corso Linux Guida completa al sistema open-source. A partire da 49 €. | |
| Corso MySQL Gestione del database open-source. A partire da 39 €. | |
| Corso PHP Corso completo per la creazione di siti Web dinamici. A partire da 49 €. |