giovedì 8 ottobre 2009

Lo slash finale - problemi di duplicazione di contenuti

E' bene sapere, sopratutto per coloro che fanno uso di mod_rewrite e simili, che basta poco per cadere nella trappola della "duplicazione di contenuti".
Infatti basta uno slash di troppo e avremo 2 indirizzi distinti che mostrano lo stesso identico contenuto, per esempio:


sono considerati due indirizzi distinti, eppure puntano alla stessa pagina con il risultato di essere considerati contenuti duplicati.

Se uno dei due indirizzi non venisse mail preso in considerazione nessuno si accorgerebbe che esiste, nemmeno i motori di ricerca, ma sono proprio i motori di ricerca, che adottano diverse strategie per indicizzare i vari indirizzi, infatti abbiamo il caso Google e il caso Yahoo che linkano il risultato della ricerca in modo diverso uno con lo slash finale (Google) e uno senza (Yahoo)


GOOGLE


YAHOO


Proprio questa situazione potrebbe penalizzare l'intero sito.
Per ovviare a questo problema, si può ricorrere a delle regole del server web che consentono di reindirizzare la chiamata di un url formattato in un determinato modo verso un'altro.
Quindi per esempio se viene chiamato l'url senza lo slash lo ridirigeremo sempre su quello con lo slash in questo modo risulerà esiste solo e soltanto un unico url per quel contenuto.

Il metodo che utilizzo con Apache e modulo mod_rewrite è il seguente:

RewriteCond %{REQUEST_URI} !(.*)/$
RewriteRule ^(.*)$ http://www.miosito.it/$1/ [L,R=301]

praticamente la prima riga controlla che sia soddisfatta la condizione per cui è vera quando l'url richiamato non ha lo slash finale. se questa condizione è vera allora si passa alla seconda riga che reindirizza allo stesso url ma con lo slash finale.

Per maggiori dettagli sulle regole e condizioni del mod_rewrite potete trovare il reference qui :

Nessun commento:

Posta un commento