Guías de instalación

Instalar XAMPP: PHP y MySQL en local

Explicamos cómo montar en su equipo un entorno con Apache, PHP y MySQL mediante XAMPP, abrir la primera página PHP y resolver los errores de puerto y de arranque más habituales.

Aurora YazılımEquipo editorial 6 min de lectura
Instalar XAMPP: PHP y MySQL en local
¿Cómo se instala XAMPP?

Para la instalación de XAMPP, descargue desde apachefriends.org el instalador adecuado para su sistema operativo e instálelo en Windows en la carpeta C:\xampp. Inicie Apache y MySQL desde el Panel de control de XAMPP y abra http://localhost en el navegador. Al colocar sus archivos en la carpeta htdocs, sus páginas PHP funcionan en local; si Apache no arranca, el problema suele ser que otro programa está usando el puerto 80.

¿Qué es XAMPP y para qué sirve?

XAMPP es un paquete gratuito que instala en su equipo, de una sola vez, el servidor web Apache, PHP, la base de datos MariaDB y el panel de administración phpMyAdmin. Su objetivo es ejecutar un sitio desarrollado con PHP en su propio ordenador, es decir, en localhost, antes de publicarlo en internet.

El nombre del paquete viene de su contenido: X (multiplataforma), Apache, MariaDB/MySQL, PHP y Perl. Las versiones actuales de XAMPP incluyen MariaDB como base de datos; MariaDB es en gran medida compatible con MySQL y en el panel de control sigue apareciendo con el nombre de MySQL.

XAMPP es ideal para aprender, hacer pequeñas pruebas y poner en marcha un proyecto con rapidez. Si necesita distintas versiones de PHP en varios proyectos o quiere un entorno idéntico al del servidor en producción, una estructura basada en contenedores es más flexible; lo explicamos en nuestra guía de instalación de Docker.

ComponenteFunciónPuerto predeterminado
ApacheSirve las páginas web80 (HTTP), 443 (HTTPS)
MariaDB (MySQL)Servidor de bases de datos3306
PHPEjecuta el código del lado del servidorDesde Apache
phpMyAdminAdministración de bases de datos desde el navegadorlocalhost/phpmyadmin

Qué tener en cuenta antes de instalar

Descargue XAMPP únicamente desde la dirección oficial, apachefriends.org. En el sitio se listan varias versiones; la diferencia básica entre ellas es la versión de PHP que incluyen. Elija el paquete más cercano a la versión de PHP que pide el proyecto con el que va a trabajar.

En Windows, haga la instalación en una carpeta cercana a la raíz, como C:\xampp. La carpeta Program Files causa problemas de permisos de escritura por el control de cuentas de usuario (UAC) de Windows; el propio instalador muestra un aviso al respecto.

  • Si en su equipo hay además instalado un servicio MySQL o IIS, puede producirse un conflicto de puertos; consulte la sección de errores más abajo.
  • El antivirus o el cortafuegos pueden pedir permiso para Apache y MySQL en el primer inicio; conceda el permiso únicamente para redes privadas.
  • XAMPP está pensado para desarrollo; con su configuración predeterminada no debe usarse como servidor en producción.

Instalar XAMPP en Windows

La instalación en Windows consta de unas pocas pantallas y las opciones predeterminadas bastan para la mayoría de los usuarios.

  1. Ejecute como administrador el instalador que ha descargado; lea el aviso de UAC y continúe.
  2. En la pantalla de componentes, compruebe que están seleccionados Apache, MySQL, PHP y phpMyAdmin; desmarque componentes como FileZilla, Mercury y Tomcat si no los necesita.
  3. Elija C:\xampp como carpeta de instalación.
  4. Cuando termine la instalación, abra el Panel de control de XAMPP y pulse los botones Start de las filas de Apache y MySQL.
  5. Cuando ambas filas se pongan en verde, abra http://localhost en el navegador; debería aparecer la página de bienvenida de XAMPP.

XAMPP en Linux y macOS

La versión de Linux se distribuye como un instalador con extensión .run y se instala en la carpeta /opt/lampp. Basta con hacer ejecutable el instalador e iniciarlo con permisos de administrador. Después de la instalación, los servicios se gestionan con el script lampp; los archivos web están en la carpeta /opt/lampp/htdocs.

También se ofrece un paquete para macOS, pero entre los usuarios de Mac es más habitual instalar por separado PHP y MariaDB con Homebrew, o usar Docker. Elija el camino que elija, la lógica es la misma: el servidor web, PHP y la base de datos funcionan juntos.

bashInstalación en Linux
chmod +x xampp-linux-*-installer.run
sudo ./xampp-linux-*-installer.run

# Gestión de servicios
sudo /opt/lampp/lampp start
sudo /opt/lampp/lampp status
sudo /opt/lampp/lampp stop

Ejecutar la primera página PHP

Apache sirve los archivos de la carpeta htdocs. En Windows esa carpeta está en C:\xampp\htdocs y en Linux, en /opt/lampp/htdocs. Cree dentro una carpeta llamada prueba y guarde el archivo siguiente con el nombre index.php.

Al abrir http://localhost/prueba/ en el navegador verá una tabla larga que muestra la versión de PHP, las extensiones cargadas y la ubicación de php.ini. Esa tabla indica que la instalación funciona correctamente; cuando termine, elimine el archivo, porque expone información detallada sobre el servidor.

phphtdocs/prueba/index.php
<?php
phpinfo();

Usar PHP desde el terminal

Para usar el PHP de XAMPP desde la línea de comandos y con Composer, añada la carpeta C:\xampp\php al PATH. Después ejecute el comando php -v en un terminal nuevo. La gestión de dependencias la explicamos paso a paso en nuestra guía de instalación de Composer.

powershell
C:\xampp\php\php.exe -v

Ajustes de MySQL y phpMyAdmin en XAMPP

Puede administrar sus bases de datos abriendo http://localhost/phpmyadmin en el navegador. Cree una base de datos con la opción Nueva del menú de la izquierda y elija como juego de caracteres utf8mb4_unicode_ci o un cotejamiento de la familia utf8mb4; así los caracteres especiales y los emojis se guardan sin problemas.

En XAMPP, la contraseña del usuario root de la base de datos está vacía por defecto. Aunque trabaje solo en su propio equipo, es buena costumbre definir una contraseña y crear usuarios independientes para sus proyectos. Después de cambiar la contraseña, para que phpMyAdmin pueda conectarse también debe actualizar la línea de la contraseña en el archivo config.inc.php.

  • El ajuste de la contraseña de phpMyAdmin está en Windows en el archivo C:\xampp\phpMyAdmin\config.inc.php.
  • Para los detalles de usuarios, permisos y comandos SQL, consulte nuestra guía de instalación de MySQL.
sqlUsuario específico del proyecto (pestaña SQL de phpMyAdmin)
CREATE DATABASE proje CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'proje_kullanici'@'localhost' IDENTIFIED BY 'guclu-bir-sifre';
GRANT ALL PRIVILEGES ON proje.* TO 'proje_kullanici'@'localhost';
FLUSH PRIVILEGES;

Error al iniciar Apache y problemas de puerto

El problema más conocido de XAMPP es que, al pulsar el botón Start de Apache, se pone en verde un momento y vuelve a apagarse. La ventana de registro de la parte inferior del panel de control suele indicar la causa: Port 80 in use o Port 443 in use. Significa que otro programa mantiene ocupado el puerto; pueden provocarlo IIS, otro servidor web o algunos programas de virtualización y comunicación.

Averiguar quién usa el puerto

Abra el Símbolo del sistema como administrador y ejecute los comandos siguientes. El primer comando muestra el número (PID) del proceso que usa el puerto y el segundo, el nombre de ese proceso.

powershell
netstat -ano | findstr :80
tasklist /FI "PID eq 1234"

Cambiar el puerto de Apache

Si no puede cerrar el programa que genera el conflicto, ejecute Apache en otro puerto. En el Panel de control, abra el archivo httpd.conf con el botón Config de la fila de Apache y cambie las líneas siguientes; después abra el sitio en http://localhost:8080. Si el conflicto es en el 443, haga lo mismo en el archivo httpd-ssl.conf.

apachehttpd.conf
Listen 8080
ServerName localhost:8080
apachehttpd-ssl.conf (si es necesario)
Listen 4433
<VirtualHost _default_:4433>

MySQL no arranca

Puede que el puerto 3306 lo esté usando un servicio MySQL instalado aparte en el equipo; detenga el servicio o cambie el valor del puerto en el archivo my.ini por un número como 3307. Ante el error «MySQL shutdown unexpectedly», haga primero una copia de seguridad de la carpeta mysql\data y lea el registro de errores; borrar archivos de datos al azar puede dañar de forma permanente sus bases de datos.

De local a sitio en producción

Un sitio que funciona en XAMPP puede comportarse de otro modo al trasladarlo al servidor en producción: cambian la versión de PHP, las extensiones, los permisos de archivos y la configuración de la base de datos. Por eso, antes de publicar es importante usar también en local la versión de PHP del servidor y guardar los datos de conexión a la base de datos en un archivo de configuración separado del código.

En producción, ajustes como la caché, la compresión y la optimización de imágenes determinan la velocidad de la página; de estos temas nos ocupamos en nuestro servicio de gestión de velocidad y rendimiento. Cuando pase de las pruebas en local a montar una web corporativa profesional o una plataforma de e-commerce, dejar la parte de servidor y seguridad en manos de un equipo especializado le ahorrará tiempo.

Para otras guías de desarrollo local, puede consultar la categoría de guías de instalación.

Preguntas frecuentes

01¿Qué diferencia hay entre XAMPP, WAMP y Laragon?

Todos tienen como objetivo ejecutar en local un servidor web, PHP y una base de datos. XAMPP destaca por ser multiplataforma y por su difusión; los demás paquetes ofrecen comodidades específicas de Windows u otras opciones para cambiar de versión. La elección depende sobre todo de la costumbre y de los requisitos del proyecto.

02¿Puedo cambiar la versión de PHP en XAMPP?

La vía oficial es instalar en una carpeta aparte el paquete de XAMPP que incluya la versión de PHP que desee. Es posible sustituir a mano la carpeta de PHP, pero pueden surgir incompatibilidades con el módulo de Apache y las extensiones; si necesita cambiar de versión con frecuencia, Docker es más práctico.

03¿Puedo usar XAMPP como servidor en producción?

No se recomienda. XAMPP está configurado para facilitar el desarrollo; valores predeterminados como la contraseña de root vacía y los paneles de administración abiertos suponen un grave riesgo de seguridad en un servidor expuesto a internet.

XAMPP es la forma más rápida de empezar a trabajar con PHP y MySQL: instálelo, inicie Apache y MySQL, coloque sus archivos en htdocs y resuelva los conflictos de puerto con unos pocos ajustes. Si desea convertir sus pruebas en local en un sistema seguro, rápido y a medida de su negocio, conozca las soluciones de software a medida de Aurora Yazılım o póngase en contacto con nosotros.