personalizado pages dominio github dns

pages - Dominio personalizado para las páginas del proyecto GitHub



dns github pages (8)

Tengo una rama de gh-pages en uno de mis repositorios http://github.com . Las páginas del proyecto GitHub funcionan bien si voy a http://myuser.github.com/myrepo

Quiero configurar un dominio personalizado (myexample.com) que servirá las páginas de este proyecto. Quiero que myexample.com y www.myexample.com sirvan estas páginas de proyecto.

La ayuda de las páginas de GitHub dice hacer un registro A y un registro CNAME en su DNS. El registro A tiene sentido, pero no sé qué registro CNAME debo hacer en mi DNS.

Los documentos de gh-pages dicen hacer un registro CNAME para ''charlie.github.com'' que es un repositorio de páginas de usuario. No tengo un repositorio de páginas de usuario, solo tengo un repositorio de proyectos y una rama de gh-pages que quiero usar para myexample.com y www.myexample.com .

¿Debo crear un repositorio de páginas de usuario solo para poder usar la página de mi proyecto para www.myexample.com y myexample.com?

Solo lo intentaría, pero quiero asegurarme de que esto funcionará ya que ya tengo www.myexample.com en vivo y no quiero cometer errores.

Le envié un correo electrónico al soporte de GitHub y su respuesta fue

No puedes tener los dos puntos de las mismas páginas gh por lo que sé.

Me resulta difícil creer que solo admitirían registros A para páginas de proyectos.

¿Alguien ha hecho esto con éxito antes?


Si se está preguntando cómo hacer que su dominio aparezca como www.mydomain.com lugar de redirigir la solicitud de www a mydomain.com , intente esto:

El archivo CNAME en la rama de gh-pages tendrá una línea:

www.mydomain.com (en lugar de mydomain.com )

No importa cuál sea su preferencia en la redirección (en otras palabras, no importa lo que haya en su archivo CNAME en la rama de gs-pages), con su proveedor de DNS , debe configurarlo de la siguiente manera:

A @ 192.30.252.154 A @ 192.30.252.153 CNAME www username.github.io


Respuesta corta

Estas explicaciones detalladas son excelentes, pero la confusión de los OP (y mi) podría resolverse con una oración: "Dirija el DNS a su nombre de usuario u organización de GitHub , ignorando el proyecto específico, y agregue los archivos CNAME apropiados en sus repositorios de proyectos: GitHub enviará El DNS correcto para el proyecto correcto basado en archivos en el repositorio " .


Visión general

La documentation es un poco confusa cuando se trata de páginas de proyecto , en lugar de páginas de usuario . Parece que deberías hacer más, pero en realidad el proceso es muy fácil.

Implica:

  1. Configuración de 2 registros A estáticos para el dominio desnudo (sin www).
  2. Creación de un registro CNAME para www que apunte a una URL de GitHub. Esto se encargará de la redirección de www para usted.
  3. Creando un archivo llamado CNAME (en mayúsculas) en la raíz de su proyecto en la rama de gh-pages. Esto le dirá a Github a qué URL responder.
  4. Espera a que todo se propague.

Lo que obtendrás

Su contenido será servido desde una URL del formulario http://nicholasjohnson.com .

La visita a http://www.nicholasjohnson.com devolverá un redireccionamiento 301 al dominio desnudo.

La ruta será respetada por la redirección, por lo que el tráfico a http://www.nicholasjohnson.com/angular se redirigirá a http://nicholasjohnson.com/angular .

Puede tener una página de proyecto por repositorio, por lo que si sus repositorios están abiertos, puede tener tantos como desee.

Aquí está el proceso:

1. Crear registros A

Para los registros A, apunte @ a las siguientes direcciones IP:

@: 192.30.252.154 @: 192.30.252.153

Estas son las direcciones IP estáticas de Github desde las que se servirá su contenido.

2. Crea un registro CNAME

Para el registro CNAME, apunte www a su nombre de usuario.github.io. Tenga en cuenta la parada completa final. Tenga en cuenta también, este es el nombre de usuario, no el nombre del proyecto . No es necesario especificar el nombre del proyecto todavía. Github utilizará el archivo CNAME para determinar desde qué proyecto se sirve el contenido.

p.ej

www: forwardadvance.github.io.

El propósito del CNAME es redirigir todo el tráfico del subdominio www a una página de GitHub que redireccionará 301 al dominio simple.

Aquí hay una captura de pantalla de la configuración que uso para mi propio sitio http://nicholasjohnson.com :

3. Crea un archivo CNAME

Agregue un archivo llamado CNAME a la raíz de su proyecto en la rama de gh-pages. Esto debe contener el dominio que desea servir. Asegúrate de comprometerte y empujar.

p.ej

nicholasjohnson.com

Este archivo le dice a GitHub que use este repositorio para manejar el tráfico a este dominio.

4. espera

Ahora espera 5 minutos, tu página de proyecto debería estar ahora en vivo.


¡Las cosas son mucho más fáciles hoy en día!

  1. Actualice su registro de dominio de Apex (@) al punto

192.30.252.154

192.30.252.153

  1. Edite el campo de dominio de Custome en la configuración de repositorio de github.

  1. www y otros subdominios pueden actualizarse como CNAME para apexar el dominio.


Acabo de descubrir, después de un poco de frustración, que si está usando PairNIC , todo lo que tiene que hacer es habilitar la configuración de "Reenvío Web" en "DNS personalizado" y proporcionar la dirección username.github.io/project y Configure automáticamente los registros de vértice y subdominio para usted. Parece hacer exactamente lo que se sugiere en la respuesta aceptada. Sin embargo, no le permitirá hacer exactamente lo mismo al agregar registros manualmente. Muy extraño. De todos modos, me tomó un tiempo darme cuenta de eso, así que pensé que compartiría para salvar a todos los demás el problema.


Así que lo descubrí. James McLaughlin me dio el codazo que necesitaba.

Para configurar un dominio personalizado para un repo de páginas de proyecto de gh-pages que maneje www.yourdomain.com y yourdomain.com (se supone que ya tiene una rama de gh-pages en su repo):

  1. Desde su proyecto de repositorio, gh-pages rama. Cree un archivo CNAME con el contenido de yourdomain.com . Comprometerse luego empujar.
  2. En su administrador de DNS, configure dos registros cname . Uno para el ápice raíz (@) y otro para www. Ambos apuntan a YOURusername.github.io de YOURusername.github.io . Si su proveedor de DNS NO admite registros ALIAS en el ápice raíz (@), simplemente cree registros A que apunten a 192.30.252.153 y 192.30.252.154
  3. Espera a que se actualicen tus servidores de nombres:

    dig yourdomain.com +nostats +nocomments +nocmd


Me gustaría compartir mis pasos, que es un poco diferente a lo que ofrecen rynop y superluminary .

  • para A registro es exactamente lo mismo pero
  • En lugar de crear CNAME para www , preferiría redirigirlo a mi dominio en blanco ( non-www )

Esta configuración se refiere a la orientación del dominio preferido . La configuración del dominio de www a non www o vise versa puede ser diferente en cada uno de los proveedores de dominio. Dado que mi dominio está bajo GoDaddy, por lo tanto, bajo la Configuración de Dominio, lo establezco usando el Reenvío de Subdominio (301).

Como resultado de apuntar el dominio al repositorio de Github, luego se asignarán todas las URL de la rama master y gh-pages similares a las que enumeré a continuación y se dirigen al dominio preferido:

dominar

Al crear el archivo CNAME en la rama master (verifíquelo en mi repositorio de usuarios ).

http://hyipworld.github.io/
http://www.hyip.world/
http://hyip.world/

páginas gh

Al crear el mismo archivo CNAME en la rama de gh-pages (verifíquelo en el repositorio de mi proyecto ).

http://hyipworld.github.io/maps/
http://www.hyip.world/maps/
http://hyip.world/maps/

Además del archivo CNAME anterior, es posible que deba omitir completamente el procesamiento de Jekyll en las páginas de GitHub creando un archivo llamado .nojekyll en la raíz del repositorio de sus páginas.