Reindirizzare permanentemente un blog verso un nuovo sito

Voglio inaugurare questo nuovo sito parlando di programmazione e sviluppo web.

Probabilmente se siete finiti su questo articolo vuol dire che, come me, state cambiando sito internet ma volete fare in modo che i visitatori che finiscono nel vecchio sito vengano portati sul nuovo sito in maniera precisa e mostrando la risorsa corretta, in pratica rendendo il reindirizzamento quasi invisibile all’occhio dell’utente.

Questo può essere utile in particolare quando si ha un blog oppure un sito molto articolato che ha una struttura ben precisa. Ebbene, grazie alla funzione ModRewrite che utilizzeremo nel file .htaccess nella radice del nostro sito, saremo in grado di generare una regola che permetta di reindirizzare correttamente il visitatore al giusto indirizzo.

Esempio pratico

Supponiamo di avere un sito che si chiami www.pincopallino.it. All’interno del sito ci sono le seguenti risorse:

www.pincopallino.it/background.jpg
www.pincopallino.it/2015/01/scrivere-un-articolo-in-wordpress
www.pincopallino.it/guide

Hey! Se questo articolo ti piace allora non dimenticarti di seguirmi anche su Facebook, Twitter e Instagram! :)

A questo punto abbiamo la necessità di spostare il blog di questo sito su un altro sito, ad esempio www.tiziocaio.it.
Oltre a fare la migrazione del database e dei files sul server (non ne parlerò in questo articolo) bisognerà fare in modo che se l’utente finisce per sbaglio nell’articolo del vecchio sito, venga dolcemente scortato verso lo stesso articolo, ma sul nuovo indirizzo.

Ecco come dovrebbe avvenire il reindirizzamento:

www.pincopallino.it/background.jpg  –>  www.tiziocaio.it/background.jpg
www.pincopallino.it/2015/01/scrivere-un-articolo-in-wordpress  –>  www.tiziocaio.it/2015/01/scrivere-un-articolo-in-wordpress
www.pincopallino.it/guide  –>  www.tiziocaio.it/guide

Dunque, potrebbe sembrare necessario realizzare un redirect per ogni articolo, ma invece le cose si semplificano grazie alle espressioni regolari e al ModRewrite.
In sostanza ci bastano poche semplici regole da inserire nel file .htaccess nella radice del vecchio sito www.pincopallino.it, come nell’esempio che segue.

<IfModule mod_rewrite.c>
  RewriteEngine On
  RewriteCond %{HTTP_HOST} ^pincopallino.it$ [OR]
  RewriteCond %{HTTP_HOST} ^www.pincopallino.it$
  RewriteRule (.*)$ http://www.tiziocaio.it/$1 [R=301,L]
</IfModule>

Questo farà in modo che qualunque indirizzo posto dopo “pincopallino.it” verrà ricopiato pari pari nell’URL “tiziocaio.it”. Questo sistema consente a tutti gli articoli e alle sezioni di un blog o di un sito particolarmente strutturato di non andare persi durante la migrazione verso il nuovo sito inernet.

Fonte: Order of Business

Potrebbe interessarti anche...

Rispondi