정적 사이트 배포 (Static Site Deployment)
빌드 파이프라인이나 서버 사이드 런타임 없이, HTML/CSS/JavaScript 파일 묶음을 호스팅 서버의 웹 루트 디렉터리에 그대로 업로드해 사이트를 서비스하는 배포 방식.
핵심 아이디어
- No build, no server-side runtime: 정적 파일만 서버에 올리면 끝.
- 웹 루트 디렉터리: cPanel 계열은
public_html/, Nginx 기본은/var/www/html/. - 컨텐츠 = 파일: 데이터베이스 없이, 변경은 파일 교체로 처리.
일반 워크플로우
- 사이트 파일 작성 (직접 코딩 또는 Claude 같은 AI 코드 생성)
- 전체 파일을 ZIP 등 단일 아카이브로 묶기 (사이트 코드는 직접 작성 또는 Claude 같은 AI 보조 생성)
- 호스팅 서버에 업로드 (FTP/SFTP/웹 매니저/CLI)
- 웹 루트 디렉터리에 압축 해제
- 도메인 연결 + SSL 발급 확인 (자동 또는 수동 Let’s Encrypt)
- 공개 URL에서 동작 검증
재배포 패턴
- 웹 루트 내 기존 파일 삭제 → 새 아카이브 업로드 → 동일 위치에 추출
- ⚠️ 압축 해제 시 폴더명을
.(현재 위치)으로 지정하지 않으면 의도치 않은 서브폴더가 생겨 URL이 깨진다.
대표 호스팅 형태
| 유형 | 예시 | 특징 |
|---|---|---|
| 공유 호스팅 (cPanel/hPanel) | Hostinger, Bluehost, GoDaddy | public_html에 ZIP 업로드 |
| 정적 사이트 전용 CDN | Netlify, Vercel, Cloudflare Pages, GitHub Pages | Git push → 자동 배포 |
| 오브젝트 스토리지 + CDN | AWS S3 + CloudFront, GCS, Azure Blob | 정적 hosting 모드 |
| VPS / 자체 서버 | Nginx, Caddy | 직접 운영 |
정적 vs 동적
- 정적: 모든 사용자가 동일 HTML을 받음. 서버는 파일만 반환.
- 동적: 요청 시점에 서버가 HTML을 생성 (PHP, Node, Python 등).
- 현대 Jamstack/Headless 패턴은 정적 산출물 + 클라이언트 측 JS + API 호출로 동적 경험을 흉내낸다.
관련 노트
- 호스팅 사업자 사례: Hostinger
- 튜토리얼 자료: yt-a4CK72s5tyA-호스팅거에-웹사이트-업로드하기
- AI 코드 생성으로 사이트 만들기: Claude