Rieccomi nuovamente alle prese con un articolo per voi… Questa volta parliamo di come i motori di ricerca gestiscono i reindirizzamenti delle pagine Web. In particolare vi parlo del redirect 301 che indica che una risorsa è stata spostata permanentemente. Il redirect 301 è usato nel caso in cui si voglia far puntare un vecchio indirizzo ad un nuovo indirizzo, senza invalidare i link che facevo riferimento al vecchio indirizzo. Nel caso del mio blog, ho usato il redirect 301 per far puntare l’indirizzo http://www.nerthase.com all’indirizzo http://www.nerthase.com/blog.

Veniamo al dunque, ed illustriamo i vari metodi per implementare un redirect 301:

Redirect PHP

Se si vuole far redigere l’indirizzo www.miosito.it all’indirizzo www.mionuovosito.it basterà posizionare all’interno della directory principale del primo sito un file index.php con all’interno queste semplici righe di codice:

<?php
Header( "HTTP/1.1 301 Moved Permanently" );
Header( "Location: http://www.mionuovosito.it" );
?>

In questo modo tutti i link che prima erano diretti a www.miosito.it verranno rediretti verso www.mionuovosito.it.

Redirect ASP

Il ragionamento è identico al caso precedente, ma si riferisce a pagine ASP:

<%
Response.Status = "301 Moved Permanently"
Response.AddHeader "Location", "http://www.mionuovosito.it"
%>

Redirect HTML

Nel caso in cui si abbia a che fare con pagine HTML, o il server su cui ci si appoggia è talmente ridicolo che non supporta altri linguaggi (scherzo… :D ), si può ricorrere al redirect HTML, inserendo all’interno della sezione head il metatag che segue:

<META HTTP-EQUIV = Refresh CONTENT="0; URL = http://www.mionuovosito.it">

In questo caso si può impostare il tempo dopo il quale effettuare il redirect alla nuova pagina, cambiando il valore che qui appare come 0.

Redirect .htaccess

Se il nostro sito è ospitato da un server Apache, ed abbiamo la possibilità di editare il file .htaccess, è possibile modificare questo file per effettuare il redirect. Basterà aggiungere nel file .htaccess situato in www.miosito.it la riga:

Redirect 301 / http://www.mionuovosito.com/

In questo caso l’intero sito sarà redirezionato verso il nuovo sito. Nel caso si voglia redirezionare solo una pagina, o una sezione del sito, è possibile inserire:

Redirect 301 /vecchiasezione/ http://www.mionuovosito.com/nuovasezione/

Il redirect preferito dai motori di ricerca è quello che utilizza il file .htaccess, che però impone alcune limitazioni sull’utilizzo del vecchio sito. Se si posiziona il file .htaccess nella radice del vecchio sito, non sarà più possibile accedervi tramite browser, nemmeno per tenerlo come disco virtuale. Per questo io ho utilizzato un redirect PHP dal sito www.nerthase.net verso il sito www.nerthase.com. In questo modo posso avere il sito www.nerthase.net come disco virtuale.