Migrar una web de servidor sin dolor

Aunque este tema es más de administrador de sistemas que de SEO, creo que no esta demás saber un poco de todo, al final en algún momento de la vida toca migrar de servidor sea por haber encontrado un mejor proveedor de hosting o por el precio.

La solución más fácil es entrar en el FTP y arrastrar la carpeta con los ficheros de la web a tu ordenador, el problema es que esto puede tomar muchas horas ya que los ficheros se copian uno a uno y si en algún momento falla puede que tengas que empezar de nuevo.

El proceso que os enseñaré a continuación consiste en hacerlo por terminal y SSH en un servidor Linux (esto ya depende de tu proveedor de hosting), recomiendo el terminal PuTTY.

Para migrar la web por ejemplo hecha con wordpress hay que migrar dos partes los ficheros y la base de datos.

Bajar todos los ficheros de la web

Lo primero es bajar los ficheros de la web, con el comando "cd" nos situamos en la raíz por ejemplo:
cd /home/admin/web/dominio.com

Normalmente la web esta dentro de public_html, vamos a comprimir la carpeta con el comando:
zip -r public_html.zip public_html/;

Con el siguiente comando movemos la web comprimida en un zip a la raíz del dominio para que podamos acceder desde el navegador.
mv public_html.zip public_html/public_html.zip;

Ahora podemos descargar toda la web desde:
http://dominio.com/public_html.zip

Subir los ficheros al nuevo servidor

No hace falta que descomprimas el zip, entra en el FTP del nuevo server y sube el fichero public_html.zip en la carpeta anterior donde esté public_html.

Ahora tendrás que cambiar el nombre de la carpeta public_html para que al descomprimir no de conflictos:
mv public_html public_aux;

A continuación descomprime el fichero public_html.zip con el siguiente comando:
unzip public_html.zip

Descargar la base de datos

Si tu panel tiene phpmyadmin mejor así te olvidas de comandos por un rato, si te descargas la base de datos en formato .sql sin descomprimir mejor (aunque ocupe más), luego es más rápido de subir.

Subir la nueva base de datos al nuevo servidor

Si la base de datos es muy pesada es posible que al subirla por phpmyadmin te dé error, lo mejor es que la subas con comandos a través de la terminal.

Primero sube el fichero .sql en la raíz public_html de la web en tu nuevo server.

Abre de nuevo la terminal y ejecuta los siguientes comandos:
mysql -u usuario_base_de_datos -p;
--introduce la contraseña del usuario de la base de datos--
use nombre_base_de_datos;
source /home/admin/web/dominio.com/public_html/base_datos.sql;

Cuando haya finalizado la importación, sal del proceso mysql y borra el fichero con la copia de la base de datos:
exit;
rm base_datos.sql;
--para confirmar pulsa "y" e intro--

Nota: Si no puedes acceder a la web o te de problemas por ejemplo para subir una imagen en wordpress es posible que sea cosa de los permisos chmod.

Si usas el panel de control Vesta

Vesta tiene un apartado de backups para bajar la última copia de seguridad con los ficheros y la base de datos en un zip.