열심히 코딩해서 완성한 첫 웹페이지나 포트폴리오 사이트, 내 컴퓨터 로컬 화면에서만 혼자 감상하기엔 너무 아깝지 않으셨나요? 친구들이나 스터디원, 혹은 취업 면접관에게 URL 링크 하나로 당당하게 보여주고 싶은데, 막상 웹 호스팅을 찾아보면 매달 빠져나가는 서버 비용도 부담스럽고 복잡한 인프라 세팅 때문에 시작도 전에 지쳐버리기 일쑤예요. 😢
저도 처음 웹 개발을 독학하던 시절, 내가 작성한 HTML 파일 하나를 인터넷 세상에 공개하는 일이 마치 거대한 벽처럼 느껴졌던 기억이 생생합니다. 하지만 전 세계 수천만 개발자들이 애용하는 GitHub Pages를 만난 뒤로는 배포에 대한 두려움이 완전히 사라졌어요. 단 1원의 비용 지출 없이 마우스 클릭 몇 번만으로 즉시 나만의 전용 웹사이트를 가질 수 있거든요. 오늘 차근차근 함께 따라 해보시면 여러분도 오늘 바로 나만의 사이트를 인터넷에 띄우실 수 있을 거예요! 😊
1. GitHub Pages가 도대체 무엇인가요? 🤔
GitHub Pages는 세계 최대의 오픈소스 플랫폼인 GitHub에서 제공하는 무료 정적 웹 호스팅(Static Web Hosting) 서비스예요. 데이터베이스나 백엔드 서버 로직(Node.js, Spring, Django 등) 없이 오직 HTML, CSS, JavaScript, 이미지 파일만으로 작동하는 웹사이트를 전 세계 누구나 접속할 수 있도록 인터넷 주소로 호스팅해 주는 기능입니다.
개인 브랜딩을 위한 포트폴리오 사이트, 오픈소스 라이브러리의 공식 문서 사이트, 간단한 소개 랜딩 페이지를 만들 때 이보다 경제적이고 안정적인 도구는 없다고 생각해요. 전송 속도도 무척 빠를 뿐만 아니라 웹 보안의 필수 요소인 HTTPS(SSL 보안 인증서)까지 기본으로 무료 제공해 준다는 점이 정말 매력적이에요.
GitHub Pages는 저장소 용량 최대 1GB, 월 대역폭(트래픽) 100GB까지 넉넉하게 무료로 제공해요. 개인 웹사이트나 취업용 포트폴리오로는 차고 넘치는 수준이니 비용 걱정은 전혀 하지 않으셔도 괜찮습니다!
2. 배포 방식 2가지 비교와 사전 준비 📊
GitHub Pages로 웹사이트를 만들 때는 크게 두 가지 방식 중 하나를 선택할 수 있어요. 계정당 딱 1개만 만들 수 있는 대표 사이트 형태인 사용자 사이트(User Site)와 프로젝트마다 무제한으로 개별 생성할 수 있는 프로젝트 사이트(Project Site) 방식인데요, 본인의 목적에 따라 선택하시면 됩니다.
두 방식은 저장소(Repository) 이름을 짓는 규칙과 생성되는 최종 URL 주소의 형태에서 차이가 발생해요. 아래 비교표를 확인해 보세요.
사용자 사이트 vs 프로젝트 사이트 특징 비교
| 구분 | 저장소 이름 규칙 | 생성 가능 개수 | 최종 배포 URL 형식 |
|---|---|---|---|
| 사용자 사이트 | {username}.github.io | 계정당 단 1개 | https://{username}.github.io |
| 프로젝트 사이트 | 자유로운 이름 (예: my-site) | 저장소마다 무제한 | https://{username}.github.io/my-site |
메인 첫 화면 파일 이름은 반드시 소문자 index.html이어야 해요! Index.html이나 main.html처럼 다른 이름을 사용하면 깃허브 서버가 시작 지점을 찾지 못해 페이지 접속 시 404 에러가 발생하니 꼭 점검해 주세요.
3. 초보자도 5분 만에 끝내는 실전 배포 4단계 🧮
터미널에서 복잡한 Git 명령어를 입력하지 않고도, 깃허브 웹 화면에서 마우스 클릭만으로 누구나 쉽게 완료할 수 있는 4단계 배포 과정입니다.
📝 배포 전체 프로세스 공식
전체 흐름 = 새 저장소 생성(Public) ➜ 소스 파일 업로드 ➜ Pages 활성화 ➜ 배포 URL 확인
- 1단계: 새 저장소(Repository) 생성: GitHub 로그인 후 우측 상단의 [+] 아이콘을 클릭하고 ‘New repository’를 선택합니다. 저장소 이름을 입력하고, 무료 배포를 위해 공개 설정인 Public을 반드시 선택한 뒤 하단의 ‘Create repository’ 버튼을 누릅니다. (무료 계정은 Public 저장소에서만 Pages 배포가 가능해요)
- 2단계: 웹사이트 소스 파일 업로드: 생성된 저장소 메인 화면에서 ‘uploading an existing file’ 링크를 클릭합니다. 준비된 index.html, style.css, 이미지 폴더를 드래그 앤 드롭으로 올린 뒤 화면 하단의 ‘Commit changes’ 버튼을 눌러 저장합니다.
- 3단계: GitHub Pages 기능 켜기: 저장소 상단 메뉴의 [Settings] 탭으로 이동한 뒤, 왼쪽 사이드 메뉴에서 [Pages]를 클릭합니다. ‘Build and deployment’의 Source를 ‘Deploy from a branch’로 두고, Branch 항목을 main(또는 master)과 / (root)로 지정한 뒤 [Save] 버튼을 누릅니다.
- 4단계: 실시간 배포 URL 접속 확인: 설정을 마친 후 약 1분에서 3분 정도 기다린 뒤 브라우저를 새로고침하면, 상단 박스에 “Your site is live at…”라는 안내와 함께 완성된 웹사이트 접속 링크가 나타납니다.
🔢 내 GitHub Pages URL 미리보기 도구
4. 자주 겪는 404 에러 원인과 도메인 연결 팁 👩💼👨💻
배포를 마쳤는데 링크를 클릭했을 때 ‘404 There isn’t a GitHub Pages site here’ 에러 화면이 나타나면 심장이 쿵 내려앉죠. 하지만 이는 아주 흔한 상황이며, 대부분 아래 세 가지 원인 중 하나이니 안심하고 체크해 보세요.
첫째, 깃허브의 초기 빌드 지연 시간입니다. 저장소에 파일을 처음 올리거나 설정을 변경한 직후에는 서버에 반영되기까지 보통 1분에서 5분 정도 소요되니 잠시 여유를 갖고 기다려 보세요. 둘째, index.html 파일의 위치입니다. 파일이 하위 폴더에 들어가 있지 않고 반드시 최상위 루트 디렉토리에 위치해야 합니다. 셋째, CSS나 이미지 경로 문제입니다. 절대경로(/style.css)로 작성하면 프로젝트 사이트 하위 경로에서 파일을 찾지 못하므로, 반드시 상대경로(./style.css)로 지정해야 합니다.
내가 보유한 개인 맞춤형 도메인(예: www.myname.com)을 연결하고 싶다면 Settings > Pages 메뉴의 ‘Custom domain’ 항목에 도메인을 입력하고 CNAME 레코드를 연결해 주면 돼요. 하단의 ‘Enforce HTTPS’ 체크박스를 활성화하면 보안 인증서까지 무료로 평생 적용됩니다!
실전 예시: 비전공자의 첫 포트폴리오 배포기 📚
실제로 비전공자로 코딩을 시작해 첫 웹 포트폴리오를 멋지게 배포한 김개발 님의 실전 사례를 소개합니다. 독자 여러분도 똑같이 적용하실 수 있어요.
사례 주인공의 상황
- 프론트엔드 독학 2개월 차, HTML과 CSS로 나만의 반응형 포트폴리오 웹사이트 제작 완료
- 클라우드 서버나 유료 호스팅 비용이 부담스러워 무료 호스팅 수단을 찾던 상태
배포 진행 과정
1) 첫 번째 단계: GitHub에 ‘my-portfolio’라는 Public 저장소를 만들고 파일 직접 업로드
2) 두 번째 단계: Settings > Pages 메뉴에서 main 브랜치 루트(/)를 선택하고 저장 완료
최종 결과
– 결과 항목 1: 서버 비용 0원으로 24시간 언제든 접속 가능한 포트폴리오 라이브 URL 확보
– 결과 항목 2: 이력서에 실제 작동하는 사이트 링크를 첨부하여 면접관에게 적극적인 실행력 어필
이처럼 복잡한 인프라나 백엔드 지식이 없더라도 GitHub Pages 하나면 누구나 자신의 정성 어린 결과물을 인터넷 세상에 당당하게 선보일 수 있답니다.
마무리: 핵심 내용 요약 📝
지금까지 서버 비용 0원으로 내 코드를 살아 숨 쉬는 웹사이트로 탈바꿈시켜 주는 GitHub Pages 무료 배포법을 살펴보았습니다.
내 컴퓨터 속 폴더 안에만 잠자고 있던 코드들이 인터넷 브라우저 주소창에 내 전용 URL로 열리는 순간의 짜릿함은 개발자로서의 성장에 엄청난 동기부여가 되어줄 거예요. 오늘 배운 4단계를 통해 미뤄두었던 나만의 포트폴리오와 멋진 웹사이트를 지금 바로 세상에 배포해 보세요! 궁금한 점은 언제든 댓글로 물어봐주세요~ 😊
GitHub Pages 무료 배포 핵심 요약
자주 묻는 질문 ❓
더 궁금한 점이나 배포 과정에서 막히는 부분이 있다면 댓글로 언제든 편하게 물어봐주세요~ 성심껏 답변해 드릴게요! 😊