Cómo Migrar WordPress y Woocommerce con Azure
Tags: spanish, webdev
Published: 2022-12-12 14:05:33

Las migraciones en WordPress siempre fueron un tema difícil de tratar. Las guías se centran en los backups locales pero no tanto en las restauraciones del lado del servidor.

Los plugins en general tampoco ayudan demasiado: Apenas instalamos alguno, el backup es gratuito, pero la migración requiere un servicio premium.

Por eso decidí armar esta guía, para resolver el dilema de una sola vez. Aclaro que si bien vamos a trabajar con Azure del lado del servidor, se puede hacer con cualquier otro VPS o Hosting siempre y cunado este nos permita una instalación previa de WordPress.

## Antes de Empezar

![XAMPP](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/6lgqgs0cbnpl87u22z8o.png)

Se asume que ya existe una instalación de WordPress local en tu PC, con un servidor como [XAMPP](https://www.apachefriends.org/es/index.html) o [MAMP](https://www.mamp.info/en/windows/). En caso de que no cumplas este requisito, te dejo un [artículo](https://themeisle.com/blog/install-xampp-and-wordpress-locally/) donde se encuentra explicado cómo hacerlo.

## Portal Azure
Primero que nada, necesitamos una cuenta en el [Portal de Azure](https://portal.azure.com/). Tener en cuenta que nos pedirá una serie de datos sensibles como:

- Número de Teléfono
- Tarjeta de Crédito
- Datos Personales

Los cuales son necesarios para validar la identidad del creador de la cuenta, pero nos darán un año de hosting gratuito si es nuestra primera vez con el servicio.

Una vez creada, nos encontraremos con esta pantalla del portal:

![Portal Azure](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/oh6wm4yknsrerrj5w8tk.png)

Presionaremos el botón “Crear un recurso” y en el buscador escribiremos “WordPress”:

![Portal Azure](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/f9pwyfsfvubjblzzy2tx.png)

Y en la busqueda vamos a elegir el que dice WordPress Certified By Bitnami.

![WordPress Certified By Bitnami](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/9rm38cv91p822jfka8h4.png)

Luego presionaremos el boton “Crear”.

![WordPress](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/zrf5thoiwwy7gyj3fjlx.png)

Introduciremos los siguientes datos:

![Crear Maquina Virtual](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/36lw5moji3bu71msoz1a.png)

En el grupo de recursos, probablemente haya que crear uno, aunque si ya lo crearon previamente para otra instancia, pueden usar el existente.

Con respecto a la región, si viven en Sudamérica, lo ideal es elegir los servidores de Brasil. Cuanto más cerca estén de la región que provee la instancia, mejor va a funcionar, menos latencia y más velocidad.

Pero puede que en la primer semana de la suscripción gratuita de Azure, solo puedan elegir la región de USA. Luego de una semana o dos, van a poder acceder a las demás regiones.

Luego de completar los datos, presionen el botón “Revisar y Crear”.

![Crear Maquina Virtual](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/3zvm7net002rxis9a59x.png)

En la pantalla final va a informarles de los costos por hora de nuestro servidor dedicado en la moneda que tengan configurada. No hay que preocuparse de esto dado que nuestra suscripción es gratuita. Continuamos apretando el botón crear.

![Crear Maquina Virtual](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/2664l3tzmp29hp95t9x8.png)

La instancia va a generarse progresivamente hasta terminar todas las subtareas que conforman la misma. Puede tardar de cinco a diez minutos dependiendo de sus características.

Una vez terminada, presionaremos “Ir al recurso”.

![Implementacion Completada](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/yypgv13l857x0ffjykfw.png)

Con la instancia creada, podremos acceder a un Dashboard de la misma, donde tendremos la IP que nos permitirá entrar a nuestro WordPress instalado.

![Panel Azure](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/33h77gp56iyiy9ndmsn9.png)

En este caso mi IP es 191.235.64.37 (Dirección IP Pública), pero en el caso de cada uno este dato va a variar. Escribimos dicha IP en el navegador.

![Hello World Web](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ysu723nl1c1jby292iqx.png)

Ya tenemos nuestro sitio en WordPress, pero nos hace falta acceder al CMS y para ello vamos a http://[IP]/wp-admin.

![WordPress Web](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/cp53nyyvbdkxfa4zofqe.png)

El problema es que no tenemos credenciales para entrar al administrador. Por lo cual vamos a obtenerlas a través de la opción “Diagnósticos de Arranque” desde nuestra instancia en el portal de Azure, y luego la pestaña “Registro Serie”:

![Diagnostico de Arranque](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/m50opa7xdsqcz02dvvik.png)

Una vez allí, vamos a buscar dentro de los logs el texto “setting bitnami”, y veremos información similar a esto:

```
[ 34.156257] bitnami[1580]: # #
[ 34.167687] bitnami[1580]: # Setting Bitnami application password to ‘Kz84dgKgZdAe’ #
[ 34.183057] bitnami[1580]: # (the default application username is ‘user’) #
[ 34.191250] bitnami[1580]: # #
```

Con esto obtendremos el nombre de usuario (user) y la contraseña (Kz84dgKgZdAe). Dichos datos nos servirán para acceder al CMS:

![Login Wordpress](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/0qps11387h4o2sb2v6wb.png)

Una vez dentro, procederemos a realizar la migración.

## Migración con Updraft
Vamos a abrir el sitio que tenemos local, en mi caso es una web de noticias sobre android con una tienda digital:

![Updraft](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/51vifl4zg1keujj4tag5.png)

Entraremos al CMS e instalaremos el plugin Updraft.

![Updraft](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/sj0cb576wtzfr6qe9xjf.png)

El mismo plugin, lo instalamos también en nuestro sitio en Azure. No hace falta explicar cómo, dado que el método es exactamente el mismo: Abrir el CMS, buscarlo en plugins, instalarlo.

Una vez instalado, vamos a darle al botón “Press Here to Start” o “Pulsa aquí para Empezar”. A veces este plugin se instala en español, a veces en inglés. No tiene una norma general.

Una vez ahí, vamos a darle al botón BackUp Now; y luego en Respaldar Ahora.

El respaldo puede durar muy poco o muchísimo, dependiendo de los plugins, themes y demás complementos instalados. Por lo cual es muy importante que eliminen todos los temas que no usen o los plugins desactivados.

![Updraft](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/cgf0vn749k13p34egx56.png)

Como mi sitio tiene Woocommerce, es probable que eso agregue un tiempo considerable al BackUp.

Cuando la copia termine, aparecerá este mensaje:

![Copia Finalizada](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/a7awc3h7ablveyu1ldcs.png)

Por defecto, la copia de seguridad se genera en wp-content/updraft.

Todos los archivos que empiezan por “backup_” son los que nos llevaremos al sitio de Azure para realizar dicha migración.

Para ello, en nuestro sitio vamos a ir a Existing Backups y apretar el botón “Upload Backup Files”. Una vez lo presionamos, aparecerá un area para arrastrar todos los archivos que queremos importar.

Los archivos comenzarán a subirse y ya tendremos nuestra migración lista.

![Migracion Lista](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/p313mi9qi8swboq3mj9s.png)

Pero si bien está subida, todavía no la aplicamos. Para hacerlo, presionaremos el botón “Restore”.

![Migracion](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/6ie78swxipcqo6zocqhi.png)

Elegimos todos los componentes, dado que queremos una migración completa. Le damos a siguiente, y comenzará la migración.

Puede que WordPress nos pida actualizar la BD, lo cual le diremos que si.

![Wordpress Migracion](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/85cs5lk431ayy9u2ycn8.png)

Nos llevará al login, pero cuando intentemos acceder, no podremos hacerlo como antes. Esto es porque al migrar, WordPress pisó la información de los usuarios autenticados. Necesitamos usar los datos con los cuales ingresábamos en nuestro servidor local.

Y listo! Ya tenemos nuestro sitio web migrado con un par de Clicks!

Espero que este artículo te haya resultado de utilidad! Si tenés alguna sugerencia sobre futuros artículos, escribime un comentario!

Nos vemos en el próximo!