Post actualizado el día octubre 29, 2026 by DeiviSanzPlay
Voy a ser directo: si buscas XAMPP configurar Joomla local porque el instalador web se queda en blanco, la respuesta habitual (subir el zip, dar permisos y listo) no te va a servir. El escenario límite del que hablo es concreto: Windows con XAMPP recién instalado, PHP 8.x, MySQL/MariaDB levantado, y al abrir la carpeta de Joomla en el navegador aparece una pantalla vacía o un error 500 sin mensaje. La opción obvia —»es cosa de permisos»— solo cubre una parte de los casos.
He montado entornos Joomla en local con XAMPP varias veces, y el patrón se repite: el fallo rara vez está en Joomla. Está en cómo XAMPP interpreta la configuración de PHP y en cómo el instalador escribe el archivo configuration.php al final. Ese detalle es el que rompe la instalación silenciosamente.
Por qué la ruta obvia de XAMPP falla con Joomla moderno
La ruta obvia consiste en descargar XAMPP, arrancar Apache y MySQL, copiar Joomla en htdocs y abrir http://localhost/joomla. Funciona en muchos casos, pero falla cuando:
— El puerto 80 está ocupado por otro servicio (IIS, Skype en versiones antiguas, algún agente corporativo). Apache arranca «en verde» pero responde en otro puerto, y el instalador de Joomla genera URLs incorrectas.
— PHP tiene display_errors desactivado. El instalador muere sin decir por qué. Sin ver el error real, cualquier ajuste de permisos es a ciegas.
— La extensión mysqli no está activa o MariaDB usa un socket distinto al que Joomla espera. El instalador detecta la base de datos, pero al crear tablas se cae.
— Joomla 4/5 exige una versión mínima de PHP y de MySQL/MariaDB. XAMPP trae versiones que cumplen, pero si actualizaste el PHP de XAMPP manualmente, puedes haber roto la carga de extensiones.
Este es el punto donde la opción «obvia» deja de servir: el problema no es Joomla, es la capa XAMPP + configuración PHP. Configurar Joomla en local con XAMPP exige mirar esa capa antes de tocar nada del CMS.
Diagnóstico antes de configurar: activar errores y comprobar el puerto
Antes de instalar, edita php.ini desde el panel de XAMPP y pon display_errors = On y error_reporting = E_ALL. Reinicia Apache. Abre un archivo info.php con phpinfo() en htdocs y revisa tres cosas: versión de PHP, extensión mysqli activa y el valor de upload_max_filesize (Joomla sube un paquete que puede superar el límite por defecto).
Comprueba el puerto real de Apache en el panel de control de XAMPP. Si dice 8080, la URL de instalación no es localhost/joomla sino localhost:8080/joomla. Ese detalle provoca que el instalador genere rutas mal y la instalación de Joomla en XAMPP quede a medias.
Para la base de datos, crea una base vacía desde phpMyAdmin con cotejamiento utf8mb4_general_ci. No uses la base test ni el usuario root sin contraseña si luego vas a exponer el entorno en red local; XAMPP por defecto deja root sin password, y eso es un riesgo real en una LAN compartida.
El paso que casi nadie menciona: configuration.php y permisos en Windows
Al final del instalador, Joomla intenta escribir configuration.php en la raíz. En Windows con XAMPP, la carpeta htdocs suele tener permisos de escritura para el usuario que ejecuta Apache, así que normalmente funciona. Pero si instalaste XAMPP en C:Program Files, el Control de Cuentas de Usuario bloquea la escritura. El instalador muestra un error genérico y muchos lo interpretan como fallo de base de datos.
La solución no es dar permisos 777 (no existe tal cosa en Windows de forma nativa). Es mover la carpeta de Joomla a C:xampphtdocsjoomla o crear el configuration.php a mano con los datos de conexión. Con Joomla configurado en local, si el archivo ya existe, el instalador lo detecta y puedes terminar el proceso sin que intente escribirlo.
Esto no funciona para instalaciones en red compartida con varios equipos escribiendo en la misma carpeta. Ahí necesitas un servidor real o una máquina virtual; XAMPP no está pensado para uso concurrente y los bloqueos de archivo de Windows rompen la instalación.
Cuándo XAMPP no es la herramienta adecuada
XAMPP sirve para desarrollo local puntual. Para un entorno de pruebas de Joomla que dure semanas o que simule producción, conviene una máquina virtual o Docker. La razón es simple: XAMPP mezcla servicios en un solo directorio y actualizar PHP o MariaDB sin romper algo requiere cuidado manual.
También hay un límite práctico: si tu equipo tiene poca RAM, arrancar Apache + MySQL + el navegador + un editor consume recursos y el instalador puede fallar por timeout. En esos casos, subir max_execution_time en php.ini ayuda, pero no lo resuelve del todo.
Para configurar Joomla en local con XAMPP sin sobresaltos, mi recomendación es revisar primero el puerto, activar errores, crear la base con utf8mb4 y evitar rutas con espacios o acentos. Con eso, el instalador suele terminar. Si no lo hace, el error visible te dirá exactamente qué extensión o permiso falta, y ahí sí puedes actuar sin adivinar.
Perfiles verificables: Sitio web
Publicado el 29 de October de 2026. Última revisión: 29 de October de 2026.