Acerca de GitHub Pages
GitHub Pages es un servicio de alojamiento de sitio estático que toma archivos HTML, CSS y JavaScript directamente desde un repositorio en GitHub Enterprise Cloud, opcionalmente ejecuta los archivos a través de un proceso de complilación y publica un sitio web. Puede ver ejemplos de sitios de GitHub Pages en la colección de ejemplos de GitHub Pages.
Puede hospedar el sitio en el dominio github.io
de GitHub o un dominio personalizado propio. Para obtener más información, vea «Configurar un dominio personalizado para tu sitio de Páginas de GitHub».
A menos que la empresa use Enterprise Managed Users, puedes optar por publicar los sitios de proyectos de forma pública o privada si administras el control de acceso del sitio. Para obtener más información, consulta "Cambio de la visibilidad del sitio GitHub Pages ."
Para empezar, consulta "Crear un sitio de Páginas de GitHub".
Los propietarios de la organización pueden inhabilitar la publicación de sitios de GitHub Pages desde los repositorios en esta. Para obtener más información, vea «Administrar la publicación de sitios de GitHub Pages de tu organización».
Tipos de sitios GitHub Pages
Existen tres tipos básicos de GitHub Pages sitios: de proyecto, de usuario y de la organización. Los sitios de proyecto están conectados coon un proyecto específico alojado en GitHub Enterprise Cloud, como una biblioteca JavaScript o una colección de recetas. Los sitios de usuario y organización están conectados a una cuenta específica en GitHub.com.
Para publicar un sitio de usuario, debes crear un repositorio propiedad de la cuenta personal denominado <username>.github.io
. Para publicar un sitio de organización, debe crear un repositorio propiedad de una organización denominado <organization>.github.io
. A menos que use un custom domain, los sitios de usuario y organización están disponibles en http(s)://<username>.github.io
o http(s)://<organization>.github.io
.
Los archivos fuente para un sitio de proyecto se almacenan en el mismo repositorio que su proyecto. A menos que use un custom domain, los sitios de proyecto están disponibles en http(s)://<username>.github.io/<repository>
o http(s)://<organization>.github.io/<repository>
.
Si publicas el sitio de forma privada, la URL de tu sitio será diferente. Para obtener más información, vea «Cambiar la visibilidad de tu sitio de GitHub Pages».
Para más información sobre cómo afectan los dominios personalizados a la dirección URL del sitio, consulta "Acerca de los dominios personalizados y las Páginas de GitHub".
Solo puedes crear un sitio de organización o de usuario para cada cuenta en GitHub Enterprise Cloud. Los sitios de proyectos, ya sean propiedad de una cuenta de organización o personal, son ilimitados.
Publicar fuentes para sitios de GitHub Pages
Advertencia: A menos que la empresa use Enterprise Managed Users, los sitios de GitHub Pages están disponibles públicamente en Internet de forma predeterminada, incluso si el repositorio del sitio es privado o interno. Puedes publicar un sitio de forma privada si administras el control de acceso del sitio. En caso contrario, si tienes datos confidenciales en el repositorio del sitio, tal vez te interese eliminarlos antes de publicarlo. Para obtener más información, vea «Acerca de los repositorios» y «Cambiar la visibilidad de tu sitio de GitHub Pages».
Puedes publicar el sitio cuando se inserten cambios en una rama específica o puedes escribir un flujo de trabajo de GitHub Actions para publicar el sitio.
Si no necesitas ningún control sobre el proceso de creación del sitio, se recomienda publicar el sitio cuando se inserten cambios en una rama específica. Puedes especificar qué rama y carpeta usar como origen de publicación. La rama de origen puede ser cualquier rama del repositorio y la carpeta de origen puede ser la raíz del repositorio (/
) de la rama de origen o una carpeta /docs
de la rama de origen. Cuando se insertan cambios en la rama de origen, los cambios en la carpeta de origen se publicarán en el sitio de GitHub Pages.
Si quieres usar un proceso de compilación distinto de Jekyll o no quieres que una rama dedicada contenga los archivos estáticos compilados, se recomienda escribir un flujo de trabajo de GitHub Actions para publicar el sitio. GitHub Enterprise Cloud proporciona plantillas de flujo de trabajo para escenarios comunes de publicación a fin de ayudarte a escribir el flujo de trabajo.
Para obtener más información, vea «Configurar una fuente de publicación para tu sitio de Páginas de GitHub».
Limitaciones de Enterprise Managed Users
Si eres cuenta de usuario administrada, el uso de GitHub Pages está limitado.
- Los sitios de GitHub Pages solo se pueden publicar desde repositorios propiedad de las organizaciones.
- Los sitios de GitHub Pages siempre se publican de forma privada y no se puede cambiar esta visibilidad. Para obtener más información, vea «Cambiar la visibilidad de tu sitio de GitHub Pages».
- No puedes crear un sitio de organización (un sitio publicado desde un repositorio denominado
<organization>.github.io
)
Para más información sobre Enterprise Managed Users, consulta "Acerca de Enterprise Managed Users".
Generadores de sitios estáticos
GitHub Pages publica cualquier archivo estático que subas a tu repositorio. Puedes crear tus propios archivos estáticos o usar un generador de sitios estáticos para que desarrolle tu sitio. También puedes personalizar tu propio proceso de compilación de forma local o en otro servidor.
Si usas un proceso de compilación personalizado o un generador de sitios estáticos distinto de Jekyll, puedes escribir un GitHub Actions para compilar y publicar el sitio. GitHub Enterprise Cloud proporciona plantillas de flujo de trabajo para varios generadores de sitios estáticos. Para obtener más información, vea «Configurar una fuente de publicación para tu sitio de Páginas de GitHub».
Si publicas el sitio desde una rama de origen, GitHub Pages usará Jekyll para compilar tu sitio de forma predeterminada. Si quieres usar un generador de sitios estáticos distinto de Jekyll, se recomienda escribir un GitHub Actions para compilar y publicar tu sitio en su lugar. De lo contrario, desactiva el proceso de compilación de Jekyll creando un archivo vacío denominado .nojekyll
en la raíz de la fuente de publicación y, después, sigue las instrucciones del generador de sitios estáticos para crear el sitio localmente.
GitHub Pages no soporta idiomas del lado del servidor como PHP, Ruby o Python.
Límites de uso de GitHub Pages
Los sitios de GitHub Pages creados después del 15 de junio de 2016 y que utilicen dominios de github.io
se proporcionan mediante HTTPS. Si creaste tu sitio antes del 15 de junio de 2016, puedes habilitar el soporte HTTPS para el tráfico hasta tu sitio. Para obtener más información, vea «Asegurar tu sitio de Páginas de GitHub con HTTPS».
Usos prohibidos
GitHub Pages no pretende ser un servicio de hospedaje web gratuito ni permite que se use de ese modo para realizar negocios en línea, un sitio de comercio electrónico, o cualquier otro sitio web que esté principalmente dirigido a facilitar operaciones comerciales o proporcionar software comercial como un servicio (SaaS). Los sitios GitHub Pages no se deben usar para realizar transacciones que impliquen el envío de información confidencial como contraseñas o números de tarjeta de crédito.
Adicionalmente, el uso de GitHub Pages está sujeto a los Términos del servicio de GitHub, incluidas las restricciones de planes para enriquecerse rápidamente, el contenido sexualmente obsceno y la actividad o contenido amenazantes o violentos.
Ejercicios educativos
No se prohíbe el uso de GitHub Pages para crear una copia de un sitio web existente como ejercicio de aprendizaje. Sin embargo, además de cumplir con los Términos del servicio de GitHub, debes escribir el código por ti mismo, el sitio no debe recopilar ningún dato de usuario, y debes incluir una renuncia de responsabilidad destacada en el sitio que indique que el proyecto no está asociado con el original y que solo se creó para fines educativos.
Límites de uso
los sitios GitHub Pages están sujetos a los siguientes límites de uso:
-
Los repositorios de código fuente de GitHub Pages tienen un límite recomendado de 1 GB. Para más información, consulta "Acerca de los archivos grandes en GitHub".
-
Los sitios de GitHub Pages publicados no pueden ser mayores a 1 GB.
-
Las implementaciones de GitHub Pages expirarán si toman más de 10 minutos.
-
Los sitios de GitHub Pages tienen un límite de banda ancha flexible de 100 GB al mes.
-
Los sitios de GitHub Pages tienen un límite flexible de 10 compilaciones por hora. Este límite no se aplica si compila y publica el sitio con un flujo de trabajo personalizado de GitHub Actions.
-
Para proporcionar una calidad de servicio coherente para todos los sitios GitHub Pages, se pueden aplicar límites de velocidad. Estos límites de velocidad no están diseñados para interferir con los usos legítimos de GitHub Pages. Si tu solicitud desencadena la limitación de velocidad, recibirás una respuesta adecuada con un código de estado HTTP de
429
, junto con un cuerpo HTML con la información.
Si tu sitio excede estas cuotas de uso, es posible que no podamos prestar servicio a tu sitio, o puedes recibir un correo electrónico formal de Soporte de GitHub sugiriendo estrategias para reducir el impacto de tu sitio en nuestros servidores, lo que incluye poner una red de distribución de contenido de un tercero (CDN) al frente de tu sitio, usar las otras características de GitHub, como lanzamientos, o mudar a un servicio de alojamiento diferente que pueda satisfacer mejor tus necesidades.
Tipos MIME en GitHub Pages
Un tipo MIME es un encabezado que un servidor envía a un navegador, proporcionando información sobre la naturaleza y el formato de los archivos que solicitó el navegador. GitHub Pages soporta más de 750 tipos MIME entre las miles de extensiones de archivo. La lista de tipos MIME admitidos se genera a partir del proyecto mime-db.
Si bien no puedes especificar los tipos de MIME personalizados en una base por perfil o por repositorio, puedes agregar o modificar los tipos de MIME para usar en GitHub Pages. Para más información, vea las instrucciones de contribución de mime-db.
Información adicional
- GitHub Pages en GitHub Skills
- "Puntos de conexión de la API de REST para repositorios"