Dominio personalizado en GitHub Pages: DNS, CNAME y HTTPS
Cómo configurar un dominio personalizado en GitHub Pages: registros DNS para el dominio raíz y www, el archivo CNAME, la verificación del dominio y activar HTTPS.
Preguntas frecuentes
¿Qué direcciones IP uso para el dominio raíz de GitHub Pages?
La documentación de GitHub (revisada en noviembre de 2026) indica cuatro registros A para el host raíz (@): 185.199.108.153, 185.199.109.153, 185.199.110.153 y 185.199.111.153. Si también quieres IPv6, añade cuatro registros AAAA: 2606:50c0:8000::153, 2606:50c0:8001::153, 2606:50c0:8002::153 y 2606:50c0:8003::153. GitHub recomienda mantener los registros A junto con los AAAA. Compáralos con la documentación antes de pegarlos, porque GitHub puede cambiar estos valores.
¿Necesito un archivo CNAME en mi repositorio?
Solo si publicas desde una rama. En ese caso, al guardar el dominio personalizado en Settings > Pages (Configuración > Pages), GitHub sube automáticamente un archivo CNAME a la raíz de la rama de origen. Si publicas con un flujo de trabajo personalizado de GitHub Actions, GitHub indica que no se crea ningún archivo CNAME y que cualquiera que ya exista se ignora y no es necesario.
¿Por qué la casilla Enforce HTTPS aparece en gris?
GitHub indica que la opción puede tardar hasta 24 horas en estar disponible después de añadir el dominio. El certificado se emite automáticamente, así que las causas habituales de que la casilla se quede bloqueada son que el DNS aún no se haya propagado o que haya registros de más, como otros registros A, AAAA, ALIAS o ANAME en el dominio raíz, o un CNAME en www que apunte a un destino distinto de GitHub. GitHub también señala que el dominio debe tener menos de 64 caracteres. Si se atasca, haz clic en Remove (Eliminar) junto al dominio, vuelve a escribirlo y guarda de nuevo.
¿Debo usar el dominio raíz o www?
GitHub recomienda www. Su documentación dice que los subdominios www son el tipo de dominio personalizado más estable, porque no les afectan los cambios en las direcciones IP de los servidores de GitHub. Elijas el que elijas como dominio personalizado, GitHub redirige el otro hacia él, siempre que el DNS de ambos apunte a GitHub Pages.
¿Cuánto tarda en funcionar un dominio personalizado en GitHub Pages?
GitHub indica que los cambios de DNS pueden tardar hasta 24 horas en propagarse. En la práctica, muchos registros se resuelven antes, pero cuenta con un día completo antes de suponer que algo falla.
¿Es seguro usar un registro DNS comodín con GitHub Pages?
GitHub desaconseja con firmeza los registros comodín como *.example.com. Su documentación dice que te exponen a un riesgo inmediato de secuestro de dominio, incluso si verificas el dominio. En su lugar, crea registros para los subdominios concretos que uses.
Respuesta corta: en tu repositorio, ve a Settings > Pages (Configuración > Pages), escribe tu dominio en Custom domain (Dominio personalizado) y guarda. Después, en tu proveedor de DNS, apunta www a <username>.github.io con un registro CNAME, y apunta el dominio sin subdominio (example.com) a GitHub con cuatro registros A. Cuando GitHub termine de emitir el certificado, marca Enforce HTTPS. Todo se reduce a un ajuste del repositorio y unos cuantos registros DNS. La mayoría de los retrasos vienen de la propagación del DNS, que según GitHub puede tardar hasta 24 horas.
Todo lo que sigue se comprobó con la documentación oficial de GitHub en noviembre de 2026. Los valores de DNS son lo más probable que cambie, así que confírmalos en la documentación de dominios personalizados de GitHub Pages antes de pegarlos.
Elige primero el tipo de dominio
| Quieres que los visitantes lleguen a | Dominio personalizado | Registros DNS necesarios | Notas |
|---|---|---|---|
www.example.com | www.example.com | CNAME en www hacia <username>.github.io, más registros A en el dominio raíz | Configuración recomendada por GitHub. example.com redirige a www. |
example.com | example.com | Registros A en el dominio raíz (o un único ALIAS/ANAME), más un CNAME en www | www.example.com redirige al dominio raíz. |
blog.example.com | blog.example.com | CNAME en blog hacia <username>.github.io | No hacen falta registros en el dominio raíz. |
La documentación de GitHub dice que los subdominios www son la opción más estable, porque no les afectan los cambios en las direcciones IP de los servidores de GitHub. Si no tienes un motivo de peso para usar el dominio sin subdominio, elige www. Si aún estás buscando registrador, nuestra comparativa de registradores de dominios repasa las opciones, y cuánto cuesta un dominio explica los precios de renovación.
Paso a paso: conecta el dominio
- Añade el dominio en GitHub. Abre tu repositorio, haz clic en Settings (Configuración) y luego en Pages (en "Code, planning, and automation"). Si no ves la pestaña Settings, búscala en el menú desplegable "More" (Más). Escribe tu dominio en el campo Custom domain y haz clic en Save (Guardar).
- Comprueba qué hizo GitHub en tu repositorio. Si publicas desde una rama, GitHub sube un archivo
CNAMEa la raíz de esa rama. Si publicas desde un flujo de trabajo personalizado de GitHub Actions, no se crea ningún archivo CNAME, y cualquiera que ya exista se ignora. - Elimina los registros DNS predeterminados. Si tu proveedor de DNS creó automáticamente un registro de aparcamiento o uno predeterminado para el host que vas a usar, bórralo primero.
- Crea los registros DNS en tu proveedor de DNS (consulta la sección siguiente).
- Espera a la propagación. GitHub indica hasta 24 horas. Puedes comprobar el avance desde una terminal con
dig www.example.com +noall +answer. - Activa Enforce HTTPS cuando la opción esté disponible (más abajo).
El orden importa menos de lo que parece
Puedes crear los registros DNS antes o después de guardar el dominio en GitHub. El riesgo está en dejar el DNS apuntando a GitHub Pages mientras ningún repositorio reclama el dominio. GitHub advierte de que configurar el DNS sin añadir el dominio a GitHub podría permitir que otra persona aloje un sitio en uno de tus subdominios. Guarda primero el dominio en GitHub y después configura el DNS.
Los registros DNS
www o cualquier subdominio: un CNAME
| Tipo | Host | Valor |
|---|---|---|
| CNAME | www | <username>.github.io |
Usa tu nombre de usuario o el de tu organización, sin el nombre del repositorio. GitHub indica expresamente que no apuntes el CNAME a la dirección única *.pages.github.io que aparece en la configuración de tu repositorio.
Dominio raíz: cuatro registros A (revisado en noviembre de 2026)
| Tipo | Host | Valor |
|---|---|---|
| A | @ | 185.199.108.153 |
| A | @ | 185.199.109.153 |
| A | @ | 185.199.110.153 |
| A | @ | 185.199.111.153 |
IPv6 opcional, si lo quieres, como registros AAAA en @:
| Tipo | Host | Valor |
|---|---|---|
| AAAA | @ | 2606:50c0:8000::153 |
| AAAA | @ | 2606:50c0:8001::153 |
| AAAA | @ | 2606:50c0:8002::153 |
| AAAA | @ | 2606:50c0:8003::153 |
GitHub recomienda añadir los registros A aunque añadas los AAAA, porque la adopción de IPv6 todavía es desigual. Si tu proveedor de DNS admite registros ALIAS o ANAME, puedes usar uno solo que apunte a <username>.github.io en lugar de los registros A y AAAA.
Dos errores que conviene evitar:
- Registros de más en el dominio raíz. GitHub dice que otros registros A, AAAA, ALIAS o ANAME en
@, o un CNAME en www que apunte a otro destino, pueden impedir que se genere el certificado HTTPS. - Apuntar un subdominio al dominio raíz. GitHub advierte de que esto causa problemas al forzar HTTPS y puede impedir que el subdominio llegue a tu sitio. Apunta los subdominios a
<username>.github.io.
Algunos proveedores usan @ para el host raíz y otros piden que dejes el campo en blanco o escribas el dominio completo. Es una peculiaridad del proveedor, no un ajuste de GitHub.
Activa HTTPS
GitHub emite los certificados de los dominios personalizados a través de Let's Encrypt. Cuando el DNS se resuelva correctamente:
- Vuelve a Settings > Pages.
- Busca una marca de verificación junto a tu dominio: significa que la comprobación de DNS se superó.
- Marca Enforce HTTPS.
GitHub indica que la opción puede tardar hasta 24 horas en estar disponible. Si no aparece varios minutos después de guardar, la solución que sugiere GitHub es hacer clic en Remove junto al dominio personalizado, volver a escribirlo y hacer clic en Save de nuevo. Además, el dominio debe tener menos de 64 caracteres para que se pueda crear un certificado.
Si la casilla sigue en gris, repasa esta lista:
- [ ] El DNS del host se resuelve hacia GitHub (
digmuestra las cuatro IP o tu CNAME<username>.github.io) - [ ] No hay registros A, AAAA, ALIAS o ANAME de más en el dominio raíz
- [ ] El CNAME de
wwwapunta a<username>.github.io, no al dominio raíz ni a una dirección pages.github.io - [ ] El dominio de Settings > Pages coincide exactamente con el que escribiste en el DNS
- [ ] Has eliminado y vuelto a añadir el dominio una vez
Verifica el dominio (muy recomendable)
La verificación impide que otras cuentas de GitHub reclamen tu dominio si tu sitio de Pages se desvincula alguna vez. GitHub señala que es posible un secuestro de dominio cuando eliminas el repositorio, cuando se rebaja tu plan de facturación o tras cualquier cambio que desvincule el dominio mientras sigue configurado para GitHub Pages y sin verificar.
- Abre los ajustes de tu perfil (no los del repositorio) y luego Pages en la barra lateral.
- Haz clic en Add a domain (Añadir un dominio), escríbelo y confirma.
- Crea el registro TXT que te muestra GitHub. El host tendrá este aspecto:
_github-pages-challenge-USERNAME.example.com. - Confirma que es visible con
dig _github-pages-challenge-USERNAME.example.com +nostats +nocomments +nocmd TXT. - De vuelta en GitHub, usa el menú junto al dominio, elige Continue verifying (Seguir verificando) y después Verify (Verificar).
GitHub indica que puede ser inmediato o tardar hasta 24 horas. Deja el registro TXT en su sitio después. Evita también los registros comodín como *.example.com: GitHub dice que suponen riesgo de secuestro incluso con el dominio verificado.
Problemas habituales
- Error 404 en el dominio personalizado, pero el sitio funciona en github.io. El dominio nunca se guardó en Settings > Pages, o el DNS aún no se ha propagado. Revisa ambas cosas.
- El dominio se restablece después de cada despliegue. Si publicas desde una rama, el archivo
CNAMEde la rama de origen debe contener tu dominio. Una compilación que vacíe la raíz de la rama, o un despliegue que omita el archivo, puede eliminarlo. Pasar a un flujo de trabajo personalizado de Actions hace innecesario el archivo. - Funciona el dominio raíz pero no www (o al revés). Ambos hosts necesitan registros. Recuerda que GitHub redirige el host emparejado solo si su DNS también apunta a GitHub Pages.
- El certificado nunca llega. Repasa la lista de comprobación anterior, empezando por buscar registros sobrantes.
Si prefieres no gestionar el DNS tú mismo
GitHub Pages encaja bien con sitios estáticos que ya guardas en un repositorio. Si lo que necesitas sobre todo es tener un sitio en línea con tu propio dominio, los dominios personalizados de We.Inc te guían por el mismo paso de DNS dentro del constructor, y la guía para conectar un dominio lo cubre para cualquier proveedor. El plan gratuito de We.Inc te permite publicar hasta tres sitios a partir de plantillas prediseñadas; el constructor con IA que redacta un sitio a partir de una instrucción empieza en el plan Starter, a $20 al mes. Puedes registrarte aquí.
Empieza gratis · Sin tarjeta de crédito
Relacionado: Blog
- Gmail con dominio propio
- DKIM en GoDaddy
- Tasación de dominios GoDaddy
- Reenvío de dominio GoDaddy
- Registro MX en GoDaddy
- Nameservers de GoDaddy
- Registro TXT en GoDaddy
- Vibe coding en Google AI Studio
Producto
Para quién es
- Para agencias
- Para freelancers
- Para proveedores de hosting
- Para plataformas SaaS
- Para startups
- Servicios financieros
- Soluciones para salud
Funciones
Recursos
- Blog
- Centro de Ayuda
- Herramientas gratuitas para empresas
- Free UI Components
- Plantillas
- Colecciones de plantillas
- Ejemplos de webs
- Guías
- Comparativas
- Alternativas
- Los mejores
- Reseñas
- Guías de precios
- Casos de uso
- Glosario y guías
- Integraciones
- Desarrolladores
- Benchmark
- Windows App