Migrar pagina web de un servidor a otro

Migrar pagina web de un servidor a otro

A lo largo de la vida útil de una página web, nos vamos a encontrar muchas veces con la necesidad de cambiarla de un servidor a otro, y esto aunque tengamos ya práctica y constumbre en hacerlo, puede y resulta un engorro por llamarlo de alguna manera suave.

En la mayoria de los casos si disponemos de un panel que ya tenga la opcion de crear backups y restaurarlos luego (como plesk, cpanel, etc) el problema se suaviza mucho, llegando a ser tan fácil y comodo migrar una pagina web que en unos pocos minutos y un par de clics tengamos todo el problema resuelto. Pero aún así hay ciertas situaciones en las que ni teniendo un panel podemos recurrir a este tipo de migraciones fáciles.

comandos linux

Migrar web con unos cuantos comandos

Que no os de miedo el título, una vez aprendidos y utilizados unas cuantas veces os sentireis tan familiarizados con ellos que pasarán a formar parte de vuestras vidas y además conseguireis hacer migraciones de paginas webs en cuestion de minutos y sin importar el panel o paneles que sean.

Primer comando RSYNC por SSH:

Para poder utilizarlo es evidente que tenemos que poder tener acceso por ssh al servidor y que el comando rsync tiene que estar instalado en los dos servidores en los que se va a trabajar.

Nos conectaremos primero de todo por ssh al servidor al cual queremos pasar toda la información, es importante que hagamos esto así para que el comando funcione como queremos y no al revés.
[code]ssh usuario@ipdelservidor[/code]

Antes de continuar decir que debemos saber los directorios exactos donde esta la información que vamos a salvar, y estos pueden ni siquiera parecerse el uno al otro dependiendo del sistema operativo y panel que tengamos en cada uno de los servidores.

[code]rsync -avz root@ipdelservidor:/home/miweb/www/ /var/www/cliente/miweb/www[/code]

Justo después de ejecutar este comando nos pedirá la contraseña del usuario que hayamos elegido para conectarnos por ssh al otro servidor de donde queremos copiar los archivos, en mi caso es la de root.

Aquí hay una situación que puede o no puede darse, si has utilizado el usuario propietario de esa carpeta en el servidor local (al que sigues conectado todavía después del comando), la web ya debería funcionar perfectamente, si como yo has utilizado root, tendrás que darle permisos al usuario por defecto de ese sitio, aquí pego unos comandos muy útiles para esto.

[code]ls -l[/code]

Nos lista todos los archivos y carpetas con sus permisos.

[code]cat /etc/passwd[/code]

Lista todos los usuarios

[code]chown -R usuario *[/code]

Le otorga a “usuario” los permisos necesarios para poder ejecutar esos archivos.

Y ya está, ya tenemos nuestra web completamente copiada al nuevo servidor, ahora vamos a ver el caso en que nuestra pagina web tenga base de datos.

Wordpress_logo

Copiar web tipo wordpress, prestashop, joomla, etc de un servidor a otro

Este y otros tipos de paginas web requieren de una base de datos para funcionar y cuando hagamos una migración estaremos obligados a migrar tambien la base de datos para que nuestro wordpress, prestashop, joomla o cualquier otro sistema funcione correctamente.

Primer paso nos conectaremos por ssh al servidor antiguo (el que va a dejar de tener la web) y ejecutaremos el siguiente comando.

[code]mysqldump -u usuariobasededatos -p nombrebasededatos > /home/miweb/www/nombrefichero.sql[/code]

esta claro que debemos cambiar usuariobasededatos, nombrebasededatos por los que corresponda, al ejecutarlo nos pedirá la contraseña y una vez puesta copiará el fichero nombrefichero.sql al directorio que le hayamos indicado, yo en este caso lo he metido en el mismo directorio que voy a copiar al nuevo servidor, así ya lo tengo allí para restaurar.

Ahora vamos a restaurar la copia de la base de datos en el nuevo servidor.

[code]mysql -u usuariobasededatos -p nombrebasededatos < /var/www/cliente/www/nombrefichero.sql[/code]

Nos pedirá la contraseña del usuario y copiará toda la base de datos en el nuevo servidor, ya tenemos copiado nuestro wordpress, tienda online, joomla o cualquier tipo de web con base de datos al su nuevo destino. Esto también se puede hacer mediante el panel phpmyadmin, exportando todo a un fichero sql y subiendolo luego al nuevo servidor que también necesita tener instalado phpmyadmin, para el caso de ficheros grandes hay veces que nos veremos obligados a modificar la configuración del php.ini dandole mas capacidad a la carga de archivos que por defecto viene con 2 megas.

migrar pagina web servidores

Migrar también las direcciones de correo electronico

Por desgracia no conozco otro metodo de hacer esto que ir creando las nuevas cuentas una a una en el nuevo servidor e ir copiando el contenido con https://ssl0.ovh.net/es/imapcopy/, si alguien conoce algún metodo mejor se agradecerá el aporte.

Deja un comentario