La problematica
Recentemente ho avuto la necessità di spostare il blog che state leggendo su un nuovo dominio (quello attuale appunto).
Le piattaforme di blog oggigiorno sono abbastanza solide e compatte (nel mio caso BlogEngine.Net versione 1.6, anche se è stata rilasciata la 2.0 qualche giorno fa).
Spostare in blocco i files quindi è abbastanza facile e serve semplicemente copiare (magari tramite FTP) i file dal vecchio dominio (nel mio caso era unsottodominio http://blog.desdinova.it) su quello nuovo (questo www.ilfondodelweb.it).
La copia e il test di funzionamento sono stati del tutto indolore e avrei potuto fermarmi li. Ma…
Pagina 404 e SEO
Il problema però è che in giro per la rete ci sono molti link che rimandano alle pagine interne del blog (quelle dei singoli post) e con la nuova configurazione questi link si sarebbero inesorabilmente trasformati in una “bellissima” pagina 404 quindi perdendo il riferimento e il potenziale lettore interessato. Inoltre in giro per i motori di ricerca ci sarebbe stato lo stesso problema aggiungendo il fatto che i nuovi post del nuovo dominio sarebbero risultati dei contenuti duplicati con inesorabili problemi di SEO ed indicizzazione.
La soluzione
La soluzione a tutto questo sta nel Redirect Permanente 301. Si tratta semplicemente di una direttiva del protocollo HTTP che permette di dire che la pagina cui ci si sta riferendo è stata spostata in modo permanente in un’altra posizione sul web. Impostando tale direttiva quindi si può realizzare una corrispondenza 1 a 1 tra i post del vecchio dominio e quelli del nuovo.
In questo modo la pagina :
http://blog.desdinova.it/post/In-Italia-e-vietato-fare-Direct-Marketing-via-mail.aspx
punterà con un Redirect 301 permanente direttamente a :
http://www.ilfondodelweb.it/post/In-Italia-e-vietato-fare-Direct-Marketing-via-mail.aspx
Così facendo abbiamo ottenuto due risultati :
- Il visitatore che punta al vecchio dominio non noterà minimamente lo spostamento e potrà leggersi comunque il post
- Il motore di ricerca capirà che si tratta della vecchia pagina spostata e non la considererà come contenuto duplicato e nel giro di poco tempo provvederà a cancellare i vecchi riferimenti
In pratica (NET)
Se sviluppate con Microsoft Framework .NET 4.0 (come nel mio caso) in termini pratici è necessario eseguire un Response.RedirectPermanent(…) nella funzione Application_BeginRequest(…) del Global.asax, che punta al nuovo dominio ed il gioco è fatto. Attenzione a non usare la funzione Response.redirect che esegue un riferimento 302 e non 301.
Conclusioni
Spostare una piattaforma di blog è semplicissimo ma per preservare i links e il posizionamento dei propri post sul motore di ricerca richiede uno sforzo in più ma oggigiorno indispensabile.
Fate attenzione!
PS: Un grazie doveroso a Oscar per avermi indicato la funzione Response.RedirectPermanent inclusa recentemente nel Framework .NET 4.0