Archivi

Ultimi Commenti

Categorie

Blog

Schermata 2014-01-27 alle 12.33.00

Redirect 301: un tutorial di base

La pratica del redirect 301 – un redirezionamento “perenne” da una o più pagine ad altre – è molto utilizzato per riportare automaticamente i visitatori su determinate pagine, evitare che ne vedano altre (vecchie, indesiderate o obsolete) e per svariate operazioni che fanno parte di una buona manutenzione del sito stesso. Per quanto il redirect non garantisca di per sè nulla – ed è importante scriverlo a chiare lettere – per quanto riguarda un buon posizionamento su Google, si tratta di una condizione necessaria che può influire direttamente sull’indicizzazione, eliminare pagine inutili o duplicate e così via.

In questo articolo andremo a vedere i redirect più comuni, come vengano utilizzati e come possono risultare utili. Il redirect 301 si può fare anche via PHP, la pratica più diffusa è pero’ quella di effettuarlo editando il file .htaccess (il . all’inizio indica un file nascosto) ovvero con il nostro software preferito di FTP. Si apre il file, si modifica come vogliamo e si fa l’upload delle modifiche per testarle: in certi casi è opportuno scaricarsi il file originale funzionante (backup), in modo da poterlo ripristinare al volo in caso di difficoltà, cosa in effetti consigliabile specie per i principianti.

Anzitutto segnaliamo rapidtables.com, uno dei migliori generatori di file htaccess che permette, tra l’altro, di fare in modo di implementare dei redirect sia con wildcards (espressioni regolari: tutte le pagine che abbiamo /page/ come prefisso, ad esempio) che singoli. Indicate l’indirizzo completo della vecchia pagina, di quella nuova su cui volete portare il traffico, selezionate “.htaccess redirect” e cliccate sul bottone per generare in automatico la direttiva da copia-incollare nel file in questione.

Schermata 2014-01-27 alle 12.33.00

Per quanto riguarda i redirect singoli, basta scrivere in questo modo seguendo la falsariga:

redirect 301 /vecchiapagina.htm http://miosito.it/nuovapagina.htm

che assume di riportare automaticamente miosito.it/vecchiapagina.htm verso miosito.it/nuovapagina.htm: in questo modo tutte le richieste della vecchia pagina saranno indirizzate per ogni visitatore sulla nuova. Si faccia attenzione a seguire questa sintassi e si sappia inoltre che, in generale, l’ordine in cui inseriamo le direttive del nostro .htaccess ha importanza, per cui è opportuno inserire i blocchi di redirect solitamente all’inizio o alla fine del file, e non in mezzo a ciò che già esiste per evitare che il sito smetta di funzionare in tutto o in parte.

Per fare una cosa simile, ovvero redirezionare un intero sito su un nuovo indirizzo (cambio di indirizzo sito):

redirect 301 / http://www.nuovo-indirizzo.it

Utilizzando redirectMatch è possibile fare in modo di estendere questo concetto ad un’intera directory con tutti i file inclusi in essa (sempre sullo stesso sito, stavolta):

RedirectMatch 301 /vecchia-dir/(.*) http://www.nomesito.com/nuova-dir/$1

Detto questo, si possono pensare dei file .htaccess che facciano cose più complicate: in genere per operare in questa direzione è necessario abilitare il modulo per la riscrittura dinamica degli URL.

RewriteEngine On

è la direttiva che fa al caso nostro. Possiamo quindi, come spesso è richiesto, per “aggiungere il WWW” all’indirizzo, fare redirect da nomesito.com a www.nomesito.com:

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

Ovviamente questi casi sono abbastanza semplici (e non coprono certamente tutti i casi possibili), ma spesso servono nella pratica, specialmente quando è necessario mantenere le cose non troppo complicate.  Per concludere, è bene prendere nota di uno dei più completi tutorial sull’argomento (in inglese), oltre che dei file .htaccess standard diffusi dalle community open source per i più famosi CMS.

  1. WordPress: link
  2. Joomla: link
  3. Drupal: link
condividi!

AUTHOR - WEB Hunter

1 Comment

3