Creación, mantenimiento y asistencia web

Cómo hacer una copia de Joomla

Logotipo de la herramienta Akeeba Backup para Joomla

En este artículo explico la manera de hacer una copia de un sitio web realizado en Joomla. Puede ser necesario hacer un duplicado por diversos motivos, por ejemplo:

  • Hacer una copia de seguridad o respaldo
  • Cambiar de hosting
  • Descargar la web a un entorno local para hacer pruebas
  • Haber finalizado una web en local y querer subirla a un hosting

Existen dos métodos que principalmente utilizo: el manual y Akeeba Backup.

Método manual

Para poder replicar Joomla se necesitan básicamente los ficheros que componen el sitio y la base de datos. Con esto es suficiente para desplegar el sitio en un servidor web que cumpla con los requisitos mínimos.

La estructura de carpetas de Joomla inicialmente está compuesta por los siguientes directorios:

  • administrator
  • bin
  • cache
  • cli
  • components
  • images
  • includes
  • language
  • layouts
  • libraries
  • logs
  • media
  • modules
  • plugins
  • templates
  • tmp

Y los siguientes ficheros:

  • configuration.php
  • htaccess.txt (puede que esté uno llamado .htaccess en su lugar o ambos)
  • index.php
  • LICENSE.txt
  • README.txt
  • robots.txt
  • web.config.txt

Supongamos que queremos hacer una copia de un sitio web que tenemos instalado en nuestro equipo para llevarlo a un hosting. Seguiremos los siguientes pasos:

  1. Subimos todos los directorios y ficheros que compongan el sitio web. Se podrían simplemente subir a través de FTP pero mejor comprimirlos y subir un solo archivo (que luego hay que descomprimir allí).
  2. Exportación de la base de datos de tu equipo a un fichero SQL. Puedes utilizar el método que más te guste, yo suelo utilizar PHPMyAdmin o consola.
  3. Creación e importación de la base de datos en el hosting.
  4. Modificación del archivo configuration.php:
    • Parámetros referentes a la base de datos: servidor, usuario y contraseña. El prefijo de las tablas en principio no se ha cambiado.
    • Rutas a las carpetas temporales y de registros (tmp y logs). Si no las sabes, hay múltiples métodos de averiguarlas. Joe Joomla nos propone uno.
    • Adaptaciones al nuevo sitio web, aunque esto se puede hacer ya desde el panel de administración: nombre del sitio, configuración de envío de correo, duración de la sesión, etc, etc.
  5. Comprueba que puedes acceder a la parte pública y al panel de administración.

Si estás utilizando el archivo .htaccess (para la reescritura de URLs por ejemplo) pudiera ser que alguna de las reglas allí dentro diese algún problema con el nuevo hosting.

Método Akeeba Backup

Este es más fácil y rápido. Quien mejor explica este proceso es la documentación oficial pero voy a hacer un resumen.

Realizar una copia

  1. Instala Akeeba Backup. Ahora en Joomla 3 si activas el poder realizar instalaciones desde el panel son dos clics! Pero si prefieres el método tradicional ve a la página de descarga.
  2. Ahora vamos en el menú de administración de Joomla a "Extensiones" y dentro "Akeeba Backup".
  3. La primera vez que lo utilices te pedirá que aceptes las condiciones de uso y además hará unas pruebas al servidor para establecer la configuración inicial de forma automática.
  4. Ahora verás el panel de control para gestionar los backups, hacer uno nuevo, asistente de configuración, etc, etc.
  5. Al crear uno nuevo se puede añadir una nota. Y luego toca esperar... Hay un indicador para que puedas irte a otras pestañas del navegador y sepas cómo va de avanzado el proceso.
  6. Una vez creada una copia se obtiene un archivo con extensión jpa que contiene todo lo necesario para desplegar el sitio: estructura de ficheros, base de datos y algún extra como un instalador muy cómodo. Se puede descargar directamente desde el propio panel pero el propio Akeeba recomienda hacerlo a través de FTP. Las copias normalmente se encuentran en la carpeta administrator/components/com_akeeba/backup.

Restaurar una copia

Desde Akeeba nos ofrecen más de un método para restaurar una copia. Aquí vamos a ver el método Kickstart:

  1. Subimos el archivo jpa al nuevo servidor.
  2. Mientras se puede ir creando la base de datos, el usuario, la contraseña... nos va a hacer falta.
  3. Añadimos a la receta un ingrediente importante: Akeeba Kickstart. Son una serie de ficheros que también subiremos al servidor (los necesitamos descomprimidos, no el zip).
  4. Ejecutamos el archivo kickstart.php con el navegador. Por ejemplo: http://dominio.com/kickstart.php.
  5. Comienza el proceso de despliegue. Es muy similar a la instalación inicial de Joomla, muy fácil. Son 4 pasos en los que aportas los parámetros de la base de datos y poco más. El resto lo hace solo. No necesitamos ni saber la ruta a los directorios tmp y logs, debería dar con ella automáticamente.

Utilizas algún otro método o extensión? Tienes problemas para llevar a cabo el proceso? Coméntalo y comparte!

Comentarios  

Gerard
+1 #1 Gerard 15-12-2015 14:14
Hola, nosotros también recomendamos xCloner para hacer backups.

Es sencillo de usar, aquí podéis ver un tutorial y enlace al Joomla! Extensions Directory:
http://www.webempresa.com/blog/item/1001-copias-de-seguridad-con-xcloner-backup-en-joomla-15-25-y-30.html

Espero que os sea útil.
Citar
Pablo
0 #2 Pablo 16-12-2015 23:15
Hola Gerard,

Lo primero: ¡Muchas gracias por la aportación!

Me suena haber probado xCloner en alguna ocasión pero ya hace tiempo.

En este momento veo que lo retiraron del directorio de extensiones de Joomla. Si se debió al problema de seguridad que se menciona en la web del autor, probablemente no tarde en volver, parece que ya fue resuelto.

Espero que nos conozcamos en persona en el J&Beyond de Barcelona.

Gracias de nuevo y un saludo
Citar
Gerard
0 #3 Gerard 17-12-2015 16:31
Hola Pablo,

un placer :-)

La verdad que el JED no se caracteriza por su velocidad. Veo que el código del motivo de que no esté xCloner en el directorio, no aparece en el listado de códigos de errores :-)


Un saludo,
Gerard
Citar
Efra
0 #4 Efra 21-04-2016 19:04
"...hará unas pruebas al servidor para establecer la configuración inicial de forma automática."
¿Qué quiere decir eso? Me preocupa instalarlo en un sitio del cual debo de hacer una copia, si dice que puede cambiarme algo.
Citar
Pablo Arias
0 #5 Pablo Arias 22-04-2016 00:44
Esa configuración inicial lo que hace es una serie de pruebas para conocer los parámetros del servidor. Las copias no deberían cambiar absolutamente nada del sitio. De todas formas, no está de más comprobarlas.
Citar
Creación o renovación de tu sitio web, la sede online sobre la que tengas control total
Mejora continua de tu sitio web; no pierdas tiempo con los aspectos técnicos

Formación en desarrollo web: cursos y ponencias presenciales así como formación online

Apúntate y recibe gratis directamente en tu buzón de correo la Guía rápida de iniciación a Joomla.

Además, cada cierto tiempo envío trucos y novedades para aplicar a tu sitio web.

No me gusta el correo basura. Protejo tus datos.