En este tutorial, aprenderás cómo instalar un certificado SSL en XAMPP, el popular stack de desarrollo local Apache, MariaDB y PHP.
También grabamos un video que te guía a través de todo el proceso de instalación de un certificado SSL en XAMPP. Si prefieres la versión escrita, sigue leyendo a continuación.
Generar un código CSR para XAMPP
Si ya generaste el código CSR y recibiste tu certificado SSL en una carpeta ZIP, pasa directamente a los pasos de instalación.
La Solicitud de Firma de Certificado (CSR) es un pequeño archivo de texto codificado que contiene información sobre tu dominio y organización. Todas las Autoridades de Certificación comerciales exigen que los solicitantes de SSL envíen un código CSR como parte del proceso de validación.
Como XAMPP se ejecuta localmente en tu dispositivo, tienes un par de opciones para crear tu CSR. Elige un método y sigue las instrucciones del enlace:
- Usa la herramienta CSR Generator de SSL Dragon para crear el CSR automáticamente.
- Sigue nuestro tutorial paso a paso sobre cómo crear un CSR con la utilidad OpenSSL para Apache (XAMPP incluye OpenSSL, por lo que puedes ejecutarlo desde la carpeta C:xamppapachebin).
Después de generar el código CSR y el archivo de clave privada, continúa con las instrucciones de instalación.
Instalar un certificado SSL en XAMPP
Una vez que la CA valide tu pedido y entregue los archivos a tu bandeja de entrada, descarga el archivo ZIP y extrae su contenido en tu dispositivo. Necesitarás:
- Tu archivo principal de certificado SSL (por ejemplo, yourdomain_com.crt).
- El archivo del paquete CA (cadena SSL) que contiene los certificados raíz e intermedios.
- El archivo de clave privada que generaste junto con el CSR (por ejemplo, yourdomain_com.key).
Nota: Si tu paquete llega como varios archivos separados, combínalos en un solo archivo de texto simple con extensión .crt (o .ca-bundle). Agrega primero tu(s) certificado(s) intermedio(s), seguido del certificado raíz.
Paso 1: Crear la carpeta de archivos SSL
Guarda tus archivos de certificado en un directorio dedicado:
– Linux/macOS: /opt/lampp/etc/ssl
– Windows: C:xamppapachessl
Copia tu certificado, el paquete CA y la clave privada en esta carpeta.
Luego combina tu certificado y el paquete CA en un solo archivo de cadena completa:
Get-Content yourdomain_com.crt, yourdomain_com.ca-bundle | Set-Content yourdomain_com_fullchain.crt -Encoding ascii
cat yourdomain_com.crt yourdomain_com.ca-bundle > yourdomain_com_fullchain.crt
Paso 2: Localizar el archivo de configuración SSL de Apache
XAMPP guarda la configuración de HTTPS en un archivo dedicado llamado httpd-ssl.conf. Ábrelo de una de estas dos formas:
- En el Panel de Control de XAMPP, haz clic en Config en la fila de Apache y selecciona Apache (httpd-ssl.conf).
- O ábrelo directamente con un editor de texto. Se encuentra en tu carpeta de instalación de XAMPP en C:xamppapacheconfextrahttpd-ssl.conf (Windows) o /opt/lampp/etc/extra/httpd-ssl.conf (Linux). Si instalaste XAMPP en una unidad diferente, ajusta la letra de la unidad en consecuencia, por ejemplo, D:xamppapacheconfextrahttpd-ssl.conf.
Consejo: Asegúrate de que SSL esté realmente habilitado. En el archivo principal httpd.conf (C:xamppapacheconfhttpd.conf en Windows, /opt/lampp/etc/httpd.conf en Linux) confirma que estas dos líneas estén presentes y no comentadas (elimina cualquier # inicial):
LoadModule ssl_module modules/mod_ssl.so
Include conf/extra/httpd-ssl.conf
La directiva Listen 443, que le indica a Apache que acepte conexiones HTTPS, ya se encuentra dentro de httpd-ssl.conf, por lo que no necesitas agregarla en ningún otro lugar. En las versiones recientes de XAMPP, estas están habilitadas de forma predeterminada.
Paso 3: Editar el VirtualHost para el puerto 443
Dentro de httpd-ssl.conf, busca el bloque existente <VirtualHost _default_:443> y edítalo (en lugar de agregar un segundo bloque para el puerto 443, lo que dejaría dos hosts en conflicto). Cambia _default_:443 a *:443 y dirige las directivas SSL a tus archivos. Un bloque completo y moderno se ve así; reemplaza el nombre del servidor, el alias y las rutas con los tuyos, y usa siempre barras diagonales hacia adelante:
<VirtualHost *:443>
DocumentRoot "C:/xampp/htdocs"
ServerName yourdomain.com
ServerAlias www.yourdomain.com
SSLEngine on
# Apache 2.4.8+ (XAMPP): certificate + CA bundle in one full-chain file
SSLCertificateFile "C:/xampp/apache/ssl/yourdomain_com_fullchain.crt"
SSLCertificateKeyFile "C:/xampp/apache/ssl/yourdomain_com.key"
# Recommended TLS hardening (2026)
SSLProtocol -all +TLSv1.2 +TLSv1.3
SSLHonorCipherOrder off
<Directory "C:/xampp/htdocs">
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
- SSLCertificateFile: tu archivo de cadena completa (certificado del servidor seguido de los intermedios). En Apache 2.4.8+ esta única directiva entrega toda la cadena, por lo que no necesitas la antigua directiva SSLCertificateChainFile.
- SSLCertificateKeyFile: la clave privada que creaste junto con el CSR.
Importante: No uses SSLCACertificateFile para enviar tu cadena. Esa directiva le indica a Apache en qué CAs confiar al verificar certificados de cliente, no cuáles intermedios presentar a los navegadores. Para entregar la cadena, usa un SSLCertificateFile combinado como se muestra arriba. (En versiones antiguas de Apache anteriores a 2.4.8, en cambio, mantendrías los archivos separados y agregarías SSLCertificateChainFile apuntando al paquete CA, pero XAMPP no distribuye versiones tan antiguas.)
Guarda el archivo cuando hayas terminado.
Paso 4: Probar la configuración (recomendado)
Antes de reiniciar, verifica que la configuración no tenga errores de sintaxis para que un error tipográfico no impida que Apache se inicie. Abre una terminal en C:xamppapachebin y ejecuta:
httpd -t
Deberías ver Syntax OK. Si obtienes un error, revisa el Paso 3 antes de continuar.
Paso 5: Reiniciar Apache
En el Panel de Control de XAMPP, en la fila de Apache, haz clic en Stop, espera a que se detenga y luego haz clic en Start. Apache se recargará con tu nueva configuración SSL.
Felicidades, has instalado con éxito un certificado SSL en XAMPP. Visita tu sitio a través de https:// para confirmar que aparece el candado.
Prueba tu instalación SSL
Después de instalar el certificado, vale la pena probar la instalación para detectar posibles errores. Si tu sitio XAMPP es accesible en un dominio público, nuestro SSL Checker te ofrece escaneos e informes instantáneos sobre tu certificado, cadena y configuración.
Para una configuración puramente local (como localhost o un nombre de host privado que los escáneres públicos no pueden alcanzar), abre el sitio en tu navegador, haz clic en el candado en la barra de direcciones e inspecciona los detalles del certificado para confirmar que se está entregando el certificado correcto y la cadena completa.
¿Dónde comprar el mejor certificado SSL para XAMPP?
No necesitas salir de este sitio web. Aquí en SSL Dragon, ofrecemos una de las gamas más amplias de productos SSL a algunos de los precios más bajos del mercado. Todos nuestros certificados son compatibles con XAMPP y adecuados para proyectos de cualquier tamaño y presupuesto. Si estás desarrollando localmente ahora pero planeas lanzar en un dominio público, un certificado de confianza pública de una CA comercial es el camino a seguir.
Preguntas frecuentes
Sí. XAMPP ejecuta Apache con mod_ssl, por lo que puedes generar un certificado autofirmado para pruebas locales o instalar un certificado SSL de terceros (de confianza pública), exactamente como lo harías en cualquier servidor Apache. Edita httpd-ssl.conf, dirige las directivas SSL a tus archivos y reinicia Apache.
Para el desarrollo local, puedes generar un certificado autofirmado con el binario OpenSSL incluido en XAMPP (en C:xamppapachebin) y confiar en él en tu navegador. Si necesitas un certificado de confianza pública para un dominio real, genera un CSR, envíalo a una Autoridad de Certificación e instala el certificado emitido siguiendo los pasos anteriores. SSL Dragon ofrece certificados compatibles con este flujo de trabajo.
Si el certificado está instalado correctamente, tu sitio se carga mediante https:// (la «S» significa seguro) y el navegador muestra un candado. Haz clic en el candado e inspecciona los detalles del certificado para confirmar el emisor, las fechas de validez y que la cadena completa esté presente. También puedes ejecutar httpd -t desde C:xamppapachebin para confirmar que Apache aceptó tu configuración SSL.
No hay una única ubicación obligatoria; tú eliges dónde guardarlos y diriges httpd-ssl.conf a esa ruta. Una convención común es una carpeta dedicada como C:xamppapachessl. El certificado de muestra predeterminado propio de XAMPP se encuentra en C:xamppapacheconfssl.crt con la clave en C:xamppapacheconfssl.key.
XAMPP incluye Apache 2.4.8 o más reciente, donde SSLCertificateFile puede cargar tu certificado y su cadena intermedia desde un solo archivo combinado. Eso hace obsoleta la antigua directiva SSLCertificateChainFile. No confundas ninguna de las dos con SSLCACertificateFile, que sirve únicamente para verificar certificados de cliente, no para enviar la cadena de tu servidor a los navegadores.
Ahorre un 10% en certificados SSL al realizar su pedido hoy mismo.
Emisión rápida, cifrado potente, 99,99% de confianza del navegador, asistencia dedicada y garantía de devolución del dinero en 25 días. Código del cupón: SAVE10


