En esta entrada se recopilan los pasos necesarios para clonar WordPress. Es decir, duplicar WordPress en otro servidor, llevando a cabo un traslado de tu blog o un cambio de ubicación dentro del mismo hosting donde ya reside.
Hoy en día, la instalación de WordPress es tan sencilla que, ni siquiera, son necesarios aquellos famosos cinco minutos. Casi todas las compañías que ofrecen espacio de alojamiento y servicios de ejecución de aplicaciones (hosting) para blogs, poseen algún sistema de instalación en un clic o, incluso, planes de alojamiento especiales con WordPress ya instalado. Este es el caso de SiteGround, servicio que te recomiendo porque son especialistas en WordPress y poseen un servicio técnico 24×7 impecable.
Sin embargo, en este artículo vamos a ver el proceso completo, desgranando cada apartado para que puedas ser capaz de hacer frente a cualquier posible problema o modificación que quieras realizar.
¿Existe algún plugin para clonar WordPress? Por supuesto que sí pero yo no te lo recomiendo. Plugins del estilo de Duplicator o similares lo realizan. Sin embargo, ese tipo de herramientas suelen realizar un análisis de la Base de Datos (y de otros aspectos de la instalación) y para blogs con muchas entradas, por ejemplo, no podrás realizar la copia de la misma.
La presente guía es un compendio completo y detallado de todos los pasos requeridos con el fin de clonar WordPress (cambio de servidor o incluso instalación nueva).
Si necesitas una introducción a los blogs o a WordPress:
Y no te vendrá mal, antes de empezar, leer el siguiente artículo: SiteGround: el mejor Hosting para WordPress y qué hacer después de abrir una cuenta
Toda la información para aprender a realizar una instalación de WordPress: Cómo realizar una instalación manual o automática de WordPress,
Y si lo que te interesa es pasar un blog de Blogger a WordPress: Cómo migrar un blog de Blogger a WordPress sin morir en el intento.
Y ahora entremos ya en materia:
Construye el paquete de instalación para clonar WordPress
Figura 1: usa el Administrador de Archivos del panel de control de tu hosting para gestionar carpetas y ficheros de WordPress
El paquete de archivos que necesitas para clonar WordPress consta de los siguientes elementos:
- Copia de respaldo de la base de datos.
- Copia de seguridad de los archivos de la instalación incluidos dentro de «wp-content» (imágenes, themes, plugins, etc.)
- Copia de seguridad de los ficheros almacenados en el directorio raíz de la instalación.
Vamos a detallar un poco más todo eso, a continuación.
Qué archivos de la raíz de la instalación hay que copiar para Clonar WordPress
Si vas a clonar WordPress, lo primero que debes saber acerca de tu instalación de WordPress es qué archivos no puedes perder o, dicho de otra forma, cuáles son imprescindibles para que no pierdas datos si vas a clonar WordPress. Esto significa que antes de cualquier traslado o, simplemente como medida de seguridad, debes copiar a tu ordenador los siguientes archivos.
- Todos los archivos que existan dentro del directorio raíz de la instalación, excepto los que empiecen por «wp», ya que éstos corresponden a la intalación de WordPress. Recuerda que el archivo «htaccess» es un archivo invisible y que tendrás que modificar las opciones del cliente de gestión de archivos para verlo. Yo te recomiendo que uses el «Administrador de archivos» de CPanel.
- El archivo «wp-config-php» es una excepción y lo salvaremos también para conservar los datos de acceso a la base de datos por si acaso. Lo más probable es que, de ellos, solo necesitemos recordar el prefijo de las tablas de la base de datos.
Estos elementos se suelen encontrar en la ruta «/home/public_html» de la mayoría de los servidores. Pregunta al administrador de tu hosting cuál es dicha ruta antes de ponerte manos a la obra.
Iniciando una instalación nueva (iníciate en todos los detalles en la Guia práctica de WordPress), el paquete con el software solo contiene un archivo «wp-config-php» sin configurar. La instalación nueva (ejecutada, de forma manual, simplemente accediendo a http://tudominio.com) creará «wp-config.php» y las tablas de la base de datos.
Para clonar WordPress, haz una copia de esos archivos. Y, para mayor seguridad, realiza regularmente un backup de ellos.
Copia de respaldo de la base de datos y del contenido de «wp-content»
No cometas la imprudencia de carecer de un backup de la base de datos. En caso de desastre o, simplemente, cuando vayas a cambiar el blog de servidor, lo vas a necesitar.
¿Cómo hacer una copia de respaldo de la base de datos de WordPress? Existen muchos métodos. Algunos de los mejores son los siguientes:
- Habilita las copias de seguridad en tu servidor. Muchos hostings establecen este servicio (de pago, en algunos) y, quizás, sea el método más seguro (¡valga la redundancia!). Tener este sistema de backups activado es una garantía para una recuperación de tu hosting en caso de desastre total.
- Export con phpmyadmin. Ya veremos más adelante la utilidad de esta herramienta de gestión de las bases de datos de WordPress. La desventaja principal de realizar los backups con phpmyadmin es que no se pueden programar. Otro inconveniente es que con él solo puedes realizar una copia de la base de datos y, en algunos casos, no completa.
- Instalar un plugin. Para mí es la mejor solución. Existen muchos plugins especialmente dedicados a realizar backups de WP. Mi primera opción, y la que te recomiendo, es UpdraftPlus, un excelente plugin para almacenar la copia en Dropbox. Con Updraft Plus puedes obtener una copia de seguridad del contenido completo de la carpeta «wp-content» y de la carpeta «uploads».
Las copias de seguridad que poseerás con la mayoría de los plugins son, en realidad, consultas sql para ejecutar. Como veremos en el apartado de la restauración, dichas consultas se pueden llevar a cabo, directamente, desde el entorno phpmyadmin (accesible desde el CPanel de tu proveedor de hosting).
La copia de seguridad de la base de datos y del contenido de la carpeta «wp-content» hazla con el plugin Updraft Plus, tal y como te explico a continuación.
Backup con Updraft Plus
Utilizando el plugin de WordPress Updraft Plus tienes la ventaja de su sencillez, fiabilidad (yo he hecho multitud de copias de muchos blogs, durante mucho tiempo, y nunca me ha fallado) y la posibilidad de almacenar las copias de respaldo en Dropbox.
Configura Updraft Plus para copiar todos los ficheros necesarios (themes, plugins, uploads, etc.) de la siguiente forma:
En primer lugar, haremos una ejecución manual.
En cualquier caso, puedes tener estas opciones en automático y llevar a cabo la ejecución de la copia para la clonación yendo directamente a la pestaña «Current Status».
Después, asegúrate de que estás contectado a Dropbox.
Y, por último, activa todas las opciones del apartado «Include in files backup:»
El resultado final, serán 5 archivos zip (los 4 seleccionados más la base de datos) en Dropbox.
Con el fin de ejecutar el backup, haz lo siguiente.
Para llevar a cabo la copia de seguridad manualmente, acude a la pestaña «Current Status» y haz clic en «Backup now».
Activa las casillas «Include the database in the backup» y «Include any files in the backup (…)». Y, por supuesto, la que dice «Send this backup to remote storage» con objeto de almacenar las copias en Dropbox.
Esa es, efectivamente, una manera magnífica de hacer una copia de base de datos y de todos los archivos incluidos en la carpeta «wp-content».
Correspondencia entre servidores de nombre del dominio y máquina donde se aloja
Lógicamente, solo es necesario cambiar los servidores de nombre DNS, en la configuración del registro del dominio, si estamos realizando una clonación de WordPress, de un servidor a otro distinto.
En el caso de que solo estemos cambiando la ubicación, dentro del mismo servidor (por ejemplo, desde «public_html/miblog.com» a «miblog.com», bastará con redefinir el dominio en el servidor Web donde se aloja el blog, borrándolo y volviéndolo a crear.
Cambio de DNS
Un paso que solo es necesario si vas a clonar WordPress en otro servidor.
Figura 2: El registro del nombre de dominio y el hosting deben contratarse a distintos proveedores para mayor operatividad en caso de traslado del blog. Ello implica el cambio de los valores de DNS desde el panel de control del proveedor con el que se haya registrado el nombre del dominio.
Tanto si vas a instalar WP de nuevas como si vas a realizar un traslado de servidor, lo más idóneo es que cambies ahora los DNS. No borres nada de tu (ya) antiguo servidor por si acaso. El único caso en el que no sería necesario cambiar las DNS sería cuando solo vayas a cambiar de ubicación el blog; es decir por ejemplo de «/public_html/miblog.com» a «/miblog.com».
En el siguiente artículo de La guía práctica de WP se explica qué es un dominio, qué son los servidores de nombre DNS y cómo se cambian éstos para que tu nombre de dominio apunte al servidor donde se aloja el blog: Registrar un dominio: la guía del recién llegado a WordPress, 2ª parte.
Antes de continuar, espera a que se propaguen las DNS. ¿Cómo saber cuándo el dominio es efectivo con el nuevo servidor? Sube un archivo «index.html» que incluya la línea «Estamos apretando las tuercas», por ejemplo. Cuando accedas al blog y veas esa línea, en lugar de la página home del mismo, entonces puedes continuar al siguiente paso.
Cambio de ubicación del dominio
Este paso solo es necesario si vas a clonar WordPress dentro del propio servidor.
El cambio de ubicación del dominio (por ejemplo, desde «public_html/miblog.com» a «/miblog.com») no requiere cambio de DNS. Implica únicamente el borrado del dominio en el servidor y vuelta a crearlo.
En Cpanel, iremos a «Dominios adicionales» y borraremos el dominio «miblog.com».
Después, dentro de la misma página, volveremos a crearlo, pero esta vez cambiando el campo «Directorio raíz». Escribiremos directamente «miblog.com».
De momento, no hace falta que borremos el directorio «public_html/miblog.com» (que no se suele eliminar al borrar el dominio) ni la base de datos.
Creación de la base de datos para clonar WordPress
Figura 3: La definición de la base datos mysql a utilizar en tu blog de WP se realiza con un par de clics, dentro del panel de control de tu hosting.
Este paso no es necesario si realizas una instalación automática de WordPress (ver el apartado «Instalación de WordPress», un poco más adelante).
Solamente es preciso crear la base de datos si vas a realizar una instalación manual de WordPress.
La definición de la base de datos a emplear por tu blog no te llevará más de un minuto en Cpanel, el panel de control de la mayoría de los hostings actuales. Entra en el apartado «Bases de datos mysql». En el capítulo 4º de La guía práctica de WP se explica con todo lujo de detalles: Configurar un dominio: la guía del recién llegado a WordPress.
Aquí no creas tablas, solamente defines el nombre de la base de datos, creas las credenciales de acceso (usuario y contraseña) y asocias dicho usuario a la base de datos. Este paso es necesario tanto si vas a realizar una instalación nueva como si estás moviendo tu blog de servidor.
Recuperación de los backups
Prepararemos nuestro paquete de instalación para clonar WordPress que, como ya hemos visto anteriormente, está compuesto de:
- Archivos almacenados en Dropbox (si usaste este sistema de almacenamiento externo), mediante el backup
- Archivos guardados de la raíz de la instalación
El siguiente paso es reecuperar las copias de seguridad.
Vamos a Dropbox y descargamos a nuestro equipo local los 4 archivos zip correspondientes a las copias de seguridad:
- Themes
- Plugins
- Uploads
- Others
La carpeta «Others» contendrá todos los directorios y archivos incluidos en «wp-content» que no son ni «themes», «plugins» o «uploads».
Para recuperar los archivos de la raíz de la intalación, acude también a Dropbox y descarga a tu ordenador el archivo zip con la copia de respaldo de los ficheros de la raíz de la instalación.
La instalación de WordPress
El mejor método para instalar WordPress, tanto si se trata de un traslado como si es un simple cambio de ubicación dentro del mismo servidor, es el automático.
La única diferencia es que, previamente, habrás de cambiar los DNS si se trata de un traslado a otro servidor
Si es un cambio de ubicación, dentro del mismo servidor y suponiendo que vayas a cambiar de «public_html/miblog.com» a «miblog.com», al borrar el dominio no se puede acceder a él. Pero no se suelen borrar ni la base de datos ni los archivo dentro del directorio «public_html/miblog.com».
Instala WordPress, en el nuevo directorio «miblog.com» siguiendo las instrucciones del post siguiente: Cómo crear un blog en 5 minutos.
Subida de los archivos a la nueva ubicación
Después de instalar WordPress, sube a la nueva ubicación los archivos recuperados desde Dropbox (ver apartado «Recuperación de los backps»).
Usa el «administrador de ficheros» de Cpanel cargando directamente los archivos zip y usando posteriormente la opción «Extraer». Borra previamente las carpetas «themes», «plugins» y «uploads».
Sube a la nueva ubicación:
- Los themes.
- Los plugins.
- Las imágenes de Uploads.
- El resto de carpetas y ficheros de wp-content, contenidos en «Others».
- Los archivos de la raíz de la instalación, excepto «wp-config-php».
Restauración de la base de datos
Para restaurar la base de datos, hay que ir al gestor phpMyAdmin de Cpanel, entrando en la base de datos correspondiente.
¿Cómo sabemos cuál es si tenemos varias? En el nuevo «wp-config.php» tendremos los datos.
Eliminar tablas
Selecciona la base de datos en cuestión y activa la casilla «Marcar todos».
Luego, en el desplegable, selecciona la opción «eliminar».
Importar el backup de la base de datos
A continuación, haz clic en la pestaña «importar», seleccionar el archivo zip con el backup recuperado (ver capítulo «Recuperación de los backups») y haz clic en «continuar».
Con todo ello, se crearán las tablas originales con todo su contenido.
Los ajustes en «wp-config.php»
Si tu tarea es clonar WordPress, es muy importante que vayas ahora al archivo «wp-config.php» y cambies el prefijo de las tablas de la base de datos. La nueva instalación de WordPress habrá elegido una nueva y tú necesitas que ese prefijo sea justamente el de las tablas que acabas de importar.
Revisa cuál es el prefijo de tus tablas en la instalación original (eso lo encontrarás en la copia del «wp-config.php» y fíja el valor en el «wp-config.php», de la instalación nueva, mediante la instrucción: «$table_prefix = ‘wp_5_’;» (en este ejemplo el prefijo es «wp_5_»).
Los ajustes en la tabla «wp-options»
Es posible que el prefijo de esta tabla, como se ha visto en el paso anterior, no sea «wp_».
Pero tenga el prefijo que tenga, entra en la herramienta phpMyAdmin y edita la tabla para modificar el valor de los campos «Siteurl» y «home». Dicho valor debe coincidir con la URL del sitio final.
Ajustes finales
El blog ya está clonado. Lo hemos cambiado de servidor o, simplemente, hemos modificado su ubicación dentro del mismo servidor.
Ahora es el momento de realizar algunas comprobaciones y testear que todo funciona correctamente.
El favicon y el archivo robots.txt
Entre los archivos de la raíz de la instalación, uno es el favicon.
La imagen con el favicon debe residir en la raiz de la instalación (léase «/home/public_html/» o similar). Revisa que has subido, en el paso «Subida de los archivos a la nueva ubicación», el archivo «favicon.ico» que guardaste al principio o igualmente si se trata de una instalación nueva.
Además del favicon, comprueba que tienes en la nueva instalación el archivo robots.txt (si es que existiera) y cualquier otro del directorio raíz que hayas respaldado.
Recrear permalinks
No debes llevar a cabo ninguna acción con el archivo «.htaccess» si la instalación es nueva.
Si tu objetivo es clonar WordPress, es posible que tengas que recrear los permalinks, si al acceder a cualquier post individual de tu blog se produce el error «not found». Para ello, el archivo «.htaccess» que se creó vacio, producto de la instalación, debe poseer permisos de escritura (normalmente «777»). Puedes cambiar los permisos de cualquier archivo mediante el administrador de archivos de CPanel (o tu panel de control). Y, simplemente, volver a «Ajustes > Enlaces permanentes», en el escritorio de WP, y hacer clic en «Guardar cambios».
No es necesario que recuperes nada más del archivo «.htaccess», a no ser que añadieras alguna instrucción de redireccionamiento 301 o similares.
Al igual que con el «wp-config-php», no sobreescribas el archivo «.htaccess»: es mejor editarlo e incorporar las instrucciones necesarias del antiguo fichero.
¿Blog con «www» o sin «www»?
Un aspecto importante es que a tu blog se acceda tanto a través del dominio con «www» como sin ese prefijo. Algunos proveedores lo establecen por defecto, al dar de alta el dominio. En caso contrario, ,la forma más fácil de conseguirlo es configurar la zona avanzada DNS de tu hosting, añadiendo un registro CNAME con los siguientes valores:
Nombre: www.midominio.com.
Registro: midominio.com
Nótese que, en la mayoría de los servidores, es preciso finalizar el nombre con un punto. En algunos hostings es suficiente con establecer los valores de la siguiente forma (ver figura 4):
Nombre: www
Registro: @
Sin embargo, eso no es más que dos formas de acceder al mismo contenido (dos URL’s distintas con el mismo contenido). Eso complica la vida a los motores de búsqueda y es conveniente que se defina cuál es el dominio preferido (con o sin «www»): la URL que Google y otros motores de búsqueda utilizan para rastrear e indexar el sitio. Una vez decidido, ingresa en WMT de Google y añade también el sitio con «www» (suponiendo que ya hayas añadido el sin «www»). Es necesario verificar ambos.
Aunque WordPress tiene un sistema incorporado en la configuración capaz de redirigir el tráfico hacia el dominio preferido, se utiliza lo que se conoce como una redirección temporal o «302», lo que le dice a Google que mantenga las dos versiones de la URL en un índice. La forma de configurar en WordPress el dominio preferido (que debe coincidir con el que definas en Webmaster Tools) es situándolo en los campos «Dirección de WordPress (URL)» y «Dirección del sitio (URL)», dentro del apartado «Ajustes > General». Y WordPress se encargará automáticamente de redirigir el dominio no preferido al preferido.
Pero rastrear dos versiones del mismo contenido puede confundir a los motores de búsqueda, e incluso a los usuarios. Los motores de búsqueda prefieren que se utilicen redirecciones «permanentes», también conocidas como «301». Para ello, añade las siguientes instrucciones al archivo .htaccess, sustituyendo [misitio] por el nombre de tu dominio.
RewriteEngine On
RewriteCond %{HTTP_HOST} !^www\.[misitio]\.com [NC]
RewriteRule ^(.*)$ http://www.[misitio].com/$1 [L,R=301]
La seguridad
Antes de dar por bueno el proceso de clonar WordPress, vamos a renombrar tres archivos por seguridad: «/wp-admin/install.php», «/wp-admin/update.php» y «/wp-admin/upgrade.php». Por supuesto, la protección de tu blog ante ataques, quedará resuelta con la instalación de algún plugin del estilo de Wordfence. Pero para empezar debes llevar a cabo las siguientes medidas:
- Fijar una password fuerte. Una contraseña debe estar compuesta de, al menos, 8 caracteres, incluyendo letras, números y símbolos. Cámbiala a menudo, no la prestes y protégela de la vista de extraños. ¡Como la ropa interior! 😉
- No pongas «admin» como nombre de usuario. Te sorprenderá la cantidad de veces que se intenta acceder a tu blog con el usuario «admin». La segunda opción más utilizada es la del nombre de usuario igual al nombre de tu blog. No debes emplear, por lo tanto, ninguno de los dos.
- Elimina esos archivos que citábamos anteriormente. Ten en cuenta que para actualizar plugins, themes, o la propia versión, se necesitan esos archivos. Por lo que antes de ejecutar una actualización desde el escritorio de WordPress debes volver a renombrar los archivos a su nombre original.
Vuelve al índice: Instalando WordPress o cambiándolo de servidor.
Relacionado: Cómo realizar una instalación manual o automática de WordPress
Deja una respuesta