Guide
Cloudflare Pages/Workers로 사이트 무료 배포하기
이 사이트는 GitHub repo에 git push만 하면 Cloudflare가 자동으로 감지해서 배포합니다. 서버 관리도, 배포 명령을 직접 실행할 필요도 없습니다. 연결 과정을 정리했습니다.
1. GitHub repo 연결
- Cloudflare 대시보드 → Workers & Pages → Create application
- Connect to Git 선택 후 GitHub 계정 인증
- 배포할 repo 선택
이때 Cloudflare GitHub App이 해당 repo에 접근 권한을 갖고 있어야 목록에 보입니다. 안 보인다면 GitHub → Settings → Applications → Installed GitHub Apps에서 권한 범위를 확인해야 합니다.
2. 빌드 설정
정적 HTML/CSS/JS만 있는 사이트라면 대부분 아래 설정으로 충분합니다.
- Framework preset: None
- Build command: 비워둠 (빌드 단계가 필요 없는 정적 사이트라서)
- Deploy command:
npx wrangler pages deploy .
/bin/sh: command not found 에러로 빌드가 실패합니다. 이 필드는 실제로 실행 가능한 셸 명령이어야 합니다.
3. 자동 배포 확인
설정 후 main 브랜치에 push할 때마다 Cloudflare가 자동으로 새 빌드를 트리거합니다. GitHub 커밋의 체크(check) 상태에서 Cloudflare Pages 또는 Workers Builds 항목이 success로 뜨면 배포가 끝난 겁니다.
4. 커스텀 도메인 연결
기본으로 주어지는 *.pages.dev / *.workers.dev 주소는 편하지만, 검색엔진 최적화나 AdSense 심사에는 본인 소유의 루트 도메인이 필요합니다.
- 도메인을 구매 (Cloudflare Registrar 또는 다른 등록대행사)
- Cloudflare에 도메인 연결 (다른 곳에서 샀다면 네임서버를 Cloudflare로 변경)
- 프로젝트 → Settings → Domains & Routes → Add에서 도메인 추가
- SSL 인증서는 몇 분 내로 자동 발급됨
이후 원한다면 Domains & Routes에서 *.pages.dev/*.workers.dev 서브도메인을 비활성화해서, 최종적으로 본인 도메인 하나로만 접속되게 정리할 수 있습니다. 두 도메인을 동시에 켜두면 동일한 콘텐츠가 두 곳에 노출되어 검색엔진이 중복 콘텐츠로 인식할 수 있으니 주의가 필요합니다.
정리하면, 정적 사이트 배포는 "GitHub repo 연결 → 빌드 설정 → 커스텀 도메인" 세 단계로 끝나고, 이후엔 코드를 push하는 것만으로 계속 최신 상태가 유지됩니다.