Sembrerà una problematica stupida, ma molti, me compreso, istallano il cms in una sotto-directory per lavorare in pace e poi, quando abbiamo finito, decidono di spostare il tutto nella root principale.
A questo punto di solito ci si chiede come salvaguardare tutto il lavoro di indicizzazione svolto su Google o comunque sui motori di ricerca in generale.Passiamo all'esempio pratico: ipotizziamo di avere il nostro cms in questa directory: /joomla, cartella che si trova nella root del sito, come capirete dallo ?
Ecco come muoversi:
- mettete offline il sito;
- scaricate via ftp tutto il contenuto della cartella /joomla;
- fatene un back up e conservatelo accuratamente (non è indispensabile ma fortemente consigliato);
- aggiornare il file configuration.php modificando l'url del sito e le path a log e tmp (basterà levare /joomla ove presente; di solito i campi imputati sono questi: $live_site, $tmp_path e $log_path);
- modificate il file .htaccess inserendo, subito dopo la direttiva RewriteEngine On, la seguente istruzione:
RewriteRule ^joomla/(.*)$ /$1 [R=301,L]
ovviamente al posto di joomla dovrete inserire il nome della directory in cui è posizionata la vostra installazione Joomla; - caricate il contenuto del sito nella root del server;
- rinominate la cartella /joomla in /__jomla (o come preferite, io di solito qualsiasi file rinomini lo faccio aggiungento _data della modifica, l'importante è che non la cancelliate);
- rimettete on line il sito
Cosa succede al nostro db MySQL?
l codice sql del db non ha alcuna attinenza con il filesystem, se non per ciò che voi avete eventualmente inserito direttamente negli articoli (es: link a immagini o files per il download con percorso assoluto) o vostre implementazioni al db stesso (tipo aggiunta di tabelle).
I più bravi oltre al download dell'ftp sapranno fare anche un dump del db stesso ed il successivo restore, ma questa è una cosa che deve fare solo chi è in grado veramente di farlo, altrimenti rischiate di buttare tutto?ROocchio!!!
.htaccess
Importante: se non rinominate la vecchia cartella il sistema di redirect non funzionerÃ
La direttiva inserita nel file .htaccess serve a preservare il posizionamento raggiunto su google; vediamone il funzionamento da due punti di vista:
- lato navigatore web: il navigatore trova, su google, il link al sito (sotto /joomla) e clicca. Il webserver, dato il redirect nell'.htaccess indica al browser il nuovo indirizzo. il browser, in maniera trasparente all'utente, carica la nuova pagina, ed il navigatore difficilmente si accorgerà di che è successo.
- lato spider: alla prossima scansione google cercherà di vedere se la pagina esiste e se è stata modificata. La regola in htaccess indicherà allo spider che la pagina è stata spostata definitivamente (R=301 indica Moved Permanently). Quindi in nostro ragnetto eliminerà il riferimento e lo sostituirà con l'indirizzo fornito dal server web, verificherà poi le eventuali modifiche e, comunque, non sarà eliminerà la pagina dall'indice.
Quando eliminare la regola di redirect
Banalmente: quando google non ha più riferimenti alla cartella.
Secondo: i link esterni, se pervengono da siti con elevato trust, cioè se sono link verso il vecchio sito qualificati non toccare la regola aggiunta finché esistono.
Per chiudere: se avete creato la sitemap, ricordatevi di aggiornarla.
Buzz it!
Buzz it!







