최근 수정 시각 : 2025-08-19 10:30:51

GitHub Pages


[[GitHub|
파일:GitHub 아이콘 화이트.svg파일:GitHub 로고 화이트.svg
]]
{{{#!wiki style="min-height: calc(1.5em + 5px); margin: 0 -10px -5px"
{{{#!folding [ 펼치기 · 접기 ]
{{{#!wiki style="margin: -5px -1px -11px"
<colbgcolor=#000,#000><colcolor=#fff,#fff> 관련 인물 톰 프레스턴 워너
서비스 저장소 · GitHub Pages · GitHub Action · GitHub Packages · GitHub Wiki · GitHub Gist · GitHub Copilot
클라이언트 GitHub CLI · GitHub Desktop
오픈 소스 Electron · Atom · Tree-sitter
관련 문서 사건 사고 · GitHub Universe · npm }}}}}}}}}

1. 개요2. 배포 방식3. 도메인

1. 개요

https://pages.github.com

GitHub의 정적 웹 호스팅 서비스.

기본적으로 SSG 빌더로 Jekyll을 사용하나, 설정한다면 다양한 종류의 정적 사이트 빌더를 사용할 수 있다.

2. 배포 방식

브랜치에 배포할 수도 있고, GitHub Action을 사용할 수도 있다. 브랜치로 배포하는 경우 사전에 미리 웹사이트 빌드를 끝내서 특정 브랜치에 모든 정적 에셋을 담아 두어야 하기 때문에 직관적이긴 가장 직관적이지만 프레임워크 레이어가 쌓일수록 오히려 번거로워진다. 특히 자동화가 어려운데, 배포 자동화를 할 바에는 그냥 GHA를 쓰는 것이 낫다. 요즘은 액션이 워낙 잘돼 있어서 actions/deploy-pages 정도만 사용해도 금방 설정할 수 있다.

3. 도메인

GitHub Page는 각 GitHub 저장소 하나마다 할당되는 것이 아닌 각 계정마다 하나씩 할당된다. 오히려 deploy 설정을 잘 구성하면 하나의 저장소에 여러 Page를 둘 수 있다.

기본 도메인은 github.io로, 여기에 깃헙 계정명이 <id>.github.io 식으로 서브도메인이 된다. 저장소에 Page를 만드는 경우 일반적으로 <id>.github.io/<repo> 식으로 base url로 들어가는데, 그 말인즉슨 여러 프로젝트가 같은 도메인을 공유할 수 있다는 것이기 때문에 뭔가 복잡한 걸 만든다면 쿠키, CORS, 라우터 설정 등에서 도메인뿐 아닌 base url 기준으로 동작하도록 점검해보는 것이 좋다.