tecnologia

Migrar sitio Joomla!

Migrar Joomla! desde un servidor o hosting a otro, ya sean locales o remotos, de forma sencilla y segura. Se puede hacer de forma automática con el componente Akeeba Backup y la aplicación Akeeba Kickstar o bien a mano. Los dos procedimientos producen el mismo efecto aunque el automático es más cómodo. Veamos ambos.

Subir o migrar un sitio web de Joomla!

Migrar un sitio es trasladarlo de un servidor a otro ya sea remoto o local. Se puede hacer a mano o de forma automática.

Para hacerlo a mano hay que copiar el sitio web completo en el servidor de destino y la base de datos (exportar la base de datos). Hecho lo anterior hay que ajustar el fichero configuration.php a los datos del nuevo sitio.

Para hacerlo de forma automática se emplea la extensión de Joomla! Akeeba Backup y la aplicación externa Akeeba kickstar.

  • Con Akeeba Backup se hace una copia de seguridad del sitio (incluido Joomla!) en un mismo fichero.
  • Con Akkeba Kickstar se instala la página web y Joomla! en el nuevo servidor.

La aplicación Akeeba Kickstar realiza automáticamente todos los ajustes de configuración y adaptación al nuevo sitio.

Una vez instalado, si aparecen líneas de información sobre errores, entrar en el Backend de Joomla y en Configuración Global -> Servidor -> Información de errores y seleccionar "ninguno".

Cuando se migra de servidor remoto a servidor local (Wamp o Xampp) es igual aunque hay un ajuste en el archivo configuration.php que no hace Akeeba y hay que hacerlo a mano. Se trata de sustituir el parámetro public $live_site = 'href="http://www.nombre del dominio'; por public $live_site = ' ';.

Seguidamente se exponen con más detalle los pasos que hay que llevar a cabo para migrar Joomla!.

Acciones en el servidor de origen

Migrar con Akeeba. Tenemos que tener instalado en nuestro Joomla! el componente Akeeba Backup y configurado para que haga la copia de seguridad en formato JPA.

  • Hacer la copia con Akeeba. La copia incluye el programa Joomla! y todos los datos de la Web (base de datos).
  • Descargar esa copia con el programa Filezilla y guardarlo en nuestro PC.

Migrar a mano. Hay que descargar toda nuestra Web (todos los subdirectorios y archivos) con Filezilla a nuestro PC. Aparte hay que descargar una copia de la base de datos, para ello entrar en el CPanel del servidor de origen y con PhpMyAdmin abrir la base de datos que se quiere bajar y exportarla; al pulsar la opción exportar aparece un formulario de opciones, solo conviene seleccionar el formato de compresión GZIP lo demás dejarlo por defecto; al dar a continuar se descarga a nuestro PC una copia de la base de datos.

Crear la base de datos en el servidor de destino

Tanto para migrar con Akeeba como para hacerlo a mano hay que crear previamente una base de datos en el servidor de destino. Para crear la base de datos entrar en “CPanel”, opción “ Asistente de MySQL”, entrar en PhpMyAdmin y crear la base de datos. Ingresar los datos que pide:

  • Nombre de la base de datos.
  • Nombre de usuario y contraseña.

No es obligatorio que coincidan estos datos con los antiguos, se puede aprovechar para cambiarlos.

Para migrar a mano la base de datos nueva tiene que estar limpia (sin tablas ni registros) con Akeeba no es necesario porque la sobreescribe.

Si el servidor de destino es local (Wampp o Xampp) se crea igualmente la base de datos con la opción PhpMyAdmin, aunque en este caso se suele dar como nombre de usuario "root" y dejar contraseña en blanco (en local no hay problemas de seguridad).

Migrar Joomla! y la web al servidor de destino

Migrar con Akeeba.

Subir la copia de respaldo en formato .JPA al servidor de destino vía FTP (con Filezilla), a la carpeta raíz “/public_html”. Subir también la aplicación Kickstar descomprimida.

Si se va a migrar a un sevidor local (Wamp o Xampp) hacerlo en el subdirectorio www o htdocs.

Con el navegador del PC entrar en el dominio "http://www.mi-dominio". Si la migración se hace a un servidor local la entrada es http://localhost/nombre del subdirectorio creado para el sitio".

Aparecerán en pantalla todos los archivos subidos.

Abrir el archivo Kickstart.php y empezará la instalación.

Dejar las opciones por defecto y dar a Comenzar, se verá que se descomprime.

Finalizada la descompresión aparece la opción Ejecutar en el instalador, pulsar y se verá una pantalla con algunos avisos, pulsar siguiente y pide información sobre la base de datos.

  • En tipo de bases de datos ingresar "mysql".
  • En nombre del servidor de la base de datos ingresar: "localhost".
  • En nombre de usuario, contraseña y nombre de la base de datos, ingresar los datos del paso anterior.

Pulsar siguiente y el instalador confirma la restauración de la base de datos con éxito. Pulsar siguiente paso.

Aparece una nueva pantalla para ingresar los parámetros del sitio (se pueden cambiar los antiguos datos por unos nuevos y los datos del superusuario).

Pulsar en siguiente y después en "Borrar el directorio de instalación" que viene en rojo. Finalmente invita a visitar la zona pública del sitio.

Ya está instalado el sitio web en el servidor remoto. Solo queda confirmar que funciona perfectamente.

Si hay problemas abrir con un editor de texto el fichero Configuration.php y comprobar que se ajusta al nuevo servidor. Especialmente comprobar estos parámetros:

  • public $db = 'poner nombre de la nueva base de datos';
  • public $live_site = 'http://www.mi dominio;. Si es un servidor local sustituir por public $live_site = '';.
  • public $log_path = '/nuevo direccionamiento/log';
  • public $password = 'Contraseña para entrarbase de datos';. Para servidor local dejar en blanco, public $password =' ';.
  • public $tmp_path = '/nuevo direccionamiento/tmp';.
  • public $user = 'nombre de usuario de la base de datos'. Si es un servidor local normalmente es public $user = 'root'.

Migrar a mano. Subir al servidor de destino con Filezilla todos los subdirectorios y archivos de Joomla! a la carpeta raíz “/public_html” o equivalente. Si se migra a un servidor local se hará en el subdirectorio que hayamos creado dentro de la carpeta www o htdocs dependiendo de que sea Wamp o Xampp. Parametrizar el fichero configuration.php. con los datos señalados anteriormente.

Ocasionalmente puede interesar aprovechar y subir la última versión de Joomla! limpia y despojada de carpetas obsoletas y sobre ella instalar las extensiones, es especialmente útil cuando aparece un virus en nuestro sitio o es hackeado. Ver recuperar sitio Joomla! con virus o hackeado.

Problemas después de migrar Joomla!

Despues de instalar Joomla! siguiendo las orientaciones anteriores puede que aparezcan algunos problemillas adicionales. El alojamiento de la web tiene que tener una serie de requisitos y debe estar configurado para nuestro Joomla!. De surgir estos problemillas el servicio de soporte del proveedor de hosting los arreglará rápidamente.

Un error muy característico surge porque Joomla! requiere que PHP tenga desactivado “magic quotes gpc = Off”. Esta configuración la advierte Joomla! en la parte de administración.

Para desactivar magic quotes gpc lo mejor es comunicar el error al servicio de soporte técnico de la empresa que gestiona el alojamiento. Ellos lo desactivarán en su sistema. Así lo he hecho y la respuesta ha sido excelente.

Hay otras alternativas pero mejor no complicarse la vida.

Servidor local Wamp o Xampp

Si se utiliza Wampp comprobar que Apache tenga el "rewrite module" activado porque en otro caso no podrá llevar a cabo las instrucciones del fichero .htaccess.

También hay que abrir el archivo phsp.ini con un editor de texto y buscar las siguientes parametrizaciones y aumentar el máximo tiempo de ejecución y el peso máximo de los archivos a subir:

  • max_execution_time: 30 aumentar a 600
  • post_max_size: 8M aumentar a 26M
  • uplead_max_filesize: 2 M subir a 25M

Con Xampp no he tenido problemas.

 


Web,s amigas