Informática y Software Práctico

Solución Error XAMPP: Guía para Reparar Fallos Comunes

Post actualizado el día octubre 24, 2026 by DeiviSanzPlay

XAMPP es el paquete de servidor local más usado para desarrollar con PHP y MySQL. Su instalación sencilla no lo libra de fallos, y encontrar la solución error XAMPP adecuada puede consumir horas si no se identifica el origen. Esta guía repasa las incidencias más frecuentes y cómo resolverlas paso a paso.

Apache no arranca: el clásico puerto 80 ocupado

El mensaje «Apache shutdown unexpectedly» suele deberse a que otro programa ya escucha en el puerto 80 o 443. Skype, IIS o el servicio «World Wide Web Publishing» son sospechosos habituales. Abre una consola como administrador y ejecuta netstat -ano | findstr :80. El PID resultante se identifica con el Administrador de tareas. Alternativas: cierra el proceso conflictivo o cambia el puerto en httpd.conf (líneas Listen y ServerName) a 8080. Recuerda ajustar también la URL: http://localhost:8080.

MySQL se detiene de inmediato

Si el panel muestra MySQL en rojo, revisa el archivo mysql_error.log dentro de xampp/mysql/data. Las causas típicas son un puerto 3306 ocupado por otra instancia de MySQL o MariaDB, o un archivo ibdata1 corrupto tras un apagado brusco. Para lo primero, edita my.ini y asigna 3307. Para lo segundo, restaura la carpeta data desde una copia de seguridad y evita copiar tablas en caliente.

Error «Access denied for user root»

Ocurre cuando la contraseña de root cambió y phpMyAdmin conserva la antigua. Edita config.inc.php en phpmyadmin y actualiza $cfg[‘Servers’][$i][‘password’]. Si olvidaste la clave, detén MySQL, arranca con la opción –skip-grant-tables desde la consola de XAMPP y restablece el acceso con ALTER USER ‘root’@’localhost’ IDENTIFIED BY »;.

La página muestra error 403 o 404

El 403 aparece cuando la carpeta del proyecto carece de permisos de lectura o no existe un index. Verifica que los archivos estén en htdocs y que httpd.conf incluya la directiva Require all granted. El 404 suele originarse por una ruta mal escrita o por un archivo .htaccess con reglas de reescritura incompatibles; activa mod_rewrite eliminando el comentario de la línea LoadModule rewrite_module.

PHP no carga extensiones

Errores como «Call to undefined function mysqli_connect» indican que la extensión está desactivada. Abre php.ini (el que indica el panel, no siempre el de la carpeta php) y quita el punto y coma de extension=mysqli o extension=gd. Reinicia Apache para aplicar los cambios.

Mensajes de UAC o antivirus

En Windows, XAMPP requiere permisos elevados para escribir en sus carpetas. Instálalo fuera de Archivos de programa, por ejemplo en C:xampp. Algunos antivirus bloquean httpd.exe; añade una exclusión para el directorio completo.

Errores al iniciar el Panel de Control

Si el panel se cierra o muestra pantalla en blanco, comprueba que los Visual C++ Redistributable estén actualizados. También ayuda ejecutar xampp-control.exe como administrador y desactivar la opción «Check for updates» si la red corporativa bloquea la comprobación.

Buenas prácticas para evitar fallos

  • Detén Apache y MySQL desde el panel antes de apagar el equipo.
  • Exporta las bases de datos con regularidad mediante phpMyAdmin.
  • No muevas XAMPP entre discos sin revisar las rutas de httpd.conf y my.ini.
  • Mantén una versión estable: las betas rompen compatibilidades con extensiones.

Con estos pasos, la mayoría de incidencias se resuelven sin reinstalar. Si el problema persiste, revisa los logs (apache/error.log, mysql_error.log): casi siempre señalan la causa exacta antes que cualquier foro.