바이브코딩 서버 구조, 호스팅과 서버 비용 차이와 Nginx
AI로 화면은 금방 만들었는데 인터넷에 띄우는(배포) 단계에서 멈췄다면, 먼저 바이브코딩 서버 구조를 알아 두면 길이 보입니다. 이 글은 서버가 무엇인지, 주소창에 도메인을 쳤을 때 일어나는 5단계, 호스팅과 직접 서버의 비용 차이, 웹서버 Nginx가 하는 일을 차례로 설명합니다. 결론부터 말하면, 사이트를 여러 개 만들 계획이라면 사이트마다 돈을 내는 호스팅보다 클라우드 서버 한 대에 모두 올리는 쪽이 유리합니다.

바이브코딩 서버, 한눈에 보기
- 서버는 특별한 기계가 아니라 항상 켜져 있고 주소가 있는 컴퓨터다.
- 호스팅은 사이트당, 서버는 서버당 과금이다. 사이트가 3개쯤부터 서버 쪽이 싸지기 시작한다.
- 웹서버 프로그램으로는 Nginx가 많이 쓰인다. 작은 서버에 강하고, 설정 한 덩어리가 곧 사이트 한 개다.
- 브라우저만 있으면 포트 번호 개념을 지금 바로 확인해 볼 수 있다(아래 "브라우저로 포트 번호 확인하기").
왜 하필 배포에서 막히나
숫자로 보는 바이브코딩 배포 병목
AI 코딩 도구로 만드는 프로젝트는 크게 늘었습니다. 러버블(Lovable) 측 발표로는 2026년 6월 기준 새 프로젝트가 매주 100만 개씩 만들어집니다. 그중 실제로 운영되는 서비스가 몇 개인지는 공개된 자료가 없습니다.
막히는 곳은 배포입니다. 프리랜서 플랫폼 크몽의 2026년 발표에 따르면, 바이브코딩으로 만든 것을 마무리해 달라는 후속 개발 문의가 1분기에 직전 분기보다 2배 넘게 늘었고, 2분기에 다시 약 200%(약 3배) 늘었습니다. 작년 4분기와 비교하면 약 550% 늘어난 수준입니다. 의뢰가 가장 많이 몰린 곳은 데이터베이스 설계나 버그 수정보다 배포·출시 단계였습니다.
localhost에서 인터넷까지 필요한 6가지
AI가 만든 결과물은 처음엔 내 컴퓨터 안, 주소창에 "localhost"라고 뜨는 화면에만 있습니다. 나만 볼 수 있고, 컴퓨터를 끄면 같이 꺼집니다. 다른 사람도 보게 하려면 6가지가 더 필요합니다.
- 24시간 켜져 있는 컴퓨터(서버)
- 사람들이 찾아올 주소(도메인)
- 도메인을 서버로 이어 주는 DNS 설정
- 주소창에 자물쇠를 띄워 주는 HTTPS 인증서
- 비밀번호와 API 키를 코드 밖에 따로 두는 환경 변수
- 데이터를 저장할 데이터베이스
막히는 이유와 지금이 배우기 좋은 때인 이유
코드는 AI가 쓰고, 돌려 보고, 고치기를 몇 초 만에 반복합니다. 그런데 배포는 도메인 회사나 클라우드 회사 같은 "남의 시스템" 안에서 일어나고, 결과가 바로 보이지 않습니다. DNS를 바꾸면 반영까지 몇 시간이 걸리기도 합니다.
그래도 지금은 서버를 배우기에 어느 때보다 쉬운 시점입니다. 낯선 명령어도 AI가 함께 보거나 대신 쳐 줄 수 있기 때문입니다.
목표: 사이트 하나 더 만드는 비용을 0으로
사이트의 원가는 두 가지로 나눌 수 있습니다. 만드는 시간, 그리고 굴리는 비용(서버비)입니다. 만드는 시간은 AI 덕분에 반나절 수준으로 줄었으니 남은 건 서버비입니다.
비유하면 이렇습니다. 호스팅은 사이트가 늘 때마다 돈이 같이 늘고, 서버는 한 대를 통째로 빌려 여러 "방"으로 나눠 쓰는 방식입니다. 방을 하나 더 들여도 월세는 그대로입니다.
주소창에 도메인을 치면 일어나는 5단계
1) DNS 조회
도메인(주소록의 이름)으로 실제 주소인 IP를 찾습니다. 도메인을 사서 DNS 설정의 "A 레코드"에 서버 IP를 넣는 것이 주소록에 등록하는 일입니다. 예를 들어 "연차닷컴"이라는 도메인을 샀다면, 그 도메인의 A 레코드에 내 서버 IP를 적습니다.
2) 그 IP의 컴퓨터에 연결
IP 뒤에 콜론(:)과 함께 붙는 숫자가 포트 번호입니다. 한 컴퓨터 안에서 어느 문으로 들어갈지 정하는 번호입니다. 웹은 보통 80번(HTTP)과 443번(HTTPS)으로 연결됩니다. 서버마다 원하는 포트를 열어 두거나 닫아 둘 수 있습니다. 직접 확인하는 방법은 아래 "브라우저로 포트 번호 확인하기"에 적었습니다.
3) 웹서버 소프트웨어가 요청을 받음
서버 컴퓨터에 웹서버 프로그램이 깔려 있어야 접속했을 때 웹페이지가 보입니다. 대표적인 프로그램은 엔진엑스(Nginx)와 아파치(Apache)입니다. Nginx는 "어느 도메인으로 들어왔는지" 보고 폴더를 골라 주므로, 서버 한 대로 사이트 여러 개를 돌릴 수 있습니다.
4) 정적 파일이면 그대로, 앱이면 앱에 넘김
HTML처럼 누구에게나 똑같이 보이는 파일(정적 파일)은 그대로 내려보냅니다. 로그인이나 회원 정보처럼 사람마다 다른 데이터는 앱에 넘겨서 결과를 받습니다.
5) 화면에 표시
브라우저나 앱이 받은 것을 사용자에게 보여 줍니다.
서버는 특별한 기계가 아니다
서버는 항상 켜져 있고, 공인 IP가 있고, 요청을 기다리는 컴퓨터일 뿐입니다. CPU, 메모리, 디스크도 우리 PC와 같습니다. 다만 화면과 키보드가 없어서 터미널로 들어가는데, 그 통로가 SSH(원격 접속 규약)입니다.
집 컴퓨터도 서버가 될 수는 있습니다. 하지만 공유기 안에 숨어 있고, IP가 자꾸 바뀌는 유동 IP라 밖에서 찾기 어렵습니다. 인터넷 회사에 고정 IP를 신청하면 비슷한 역할을 할 수 있습니다.
운영체제는 우분투 LTS
서버 운영체제는 보통 리눅스, 그중 우분투 LTS를 많이 씁니다. LTS는 장기 지원 버전이라는 뜻으로, 표준 지원 기간 5년 동안 보안 업데이트가 나옵니다.
클라우드의 장점 4가지
클라우드는 남의 컴퓨터를 시간 단위로 빌려 쓰고, 쓴 만큼 내는 방식입니다.
- 몇 분이면 생긴다. 버튼 몇 번 누르면 새 컴퓨터가 켜진다.
- 쓴 만큼만 낸다. 작은 서버는 한 달 몇만 원 수준이다.
- 사양을 바로 바꿀 수 있다.
- 스냅샷으로 서버 상태를 통째로 저장했다가 되돌릴 수 있다.
시장조사업체 시너지 리서치 그룹(Synergy Research Group) 집계로 2026년 2분기 세계 클라우드 인프라 점유율은 AWS 28%, 마이크로소프트 20%, 구글 15%입니다. 넷플릭스도 AWS 위에서 돌아갑니다.
호스팅 vs 직접 서버, 무엇이 다른가
호스팅
서버 한 대를 여러 사람이 나눠 쓰면서 사이트 "한 칸"을 빌리는 방식입니다. 관리, 백업, 보안이 요금에 포함돼 시작이 쉽습니다. 대신 설치할 수 있는 것이 정해져 있고, 사이트 수나 트래픽 제한이 있는 경우가 많으며, 요금이 사이트 수에 비례합니다. 버셀(Vercel)과 클라우드플레어 페이지스(Cloudflare Pages)가 대표적입니다.
직접 서버
컴퓨터 한 대를 통째로 빌려 혼자 쓰는 방식입니다. AWS 같은 클라우드에서 서버를 빌립니다. 관리, 백업, 보안은 내 몫이지만 무엇이든 설치할 수 있고, 사이트 수 제한이 없고, 요금은 서버 사양에 비례합니다.
사이트 개수별 월 비용 어림값
대략적인 어림값으로 비교한 것입니다. 요금은 자주 바뀌니 정확한 금액은 각 서비스의 공식 요금표에서 확인해야 합니다. 호스팅 쪽은 앱을 올릴 수 있는 관리형 상품 기준이고, 정적 파일만 올리는 저가 웹호스팅은 월 수백 원부터 있습니다.
- 사이트 1개: 호스팅 월 1만~4만 원, 서버 한 대 월 3만 원 안팎(서버·디스크·고정 IP 비용 합계)
- 사이트 3개: 호스팅 3만~12만 원, 서버는 그대로 3만 원
- 사이트 10개: 호스팅 10만~40만 원, 서버는 여전히 3만 원 안팎
- 사이트 30개: 호스팅 30만~120만 원, 서버는 사양을 올려도 5만~8만 원대
사이트가 1개일 때는 비슷하니 호스팅이 편할 수 있고, 3개부터 서버가 앞서기 시작합니다. 비교할 때는 돈만이 아니라 여러 사이트를 관리하는 시간과 노력도 함께 따져야 합니다.
외주로 만들어 준 서비스를 내 서버에 올리고 매월 서버비를 받는 방법도 있습니다.
브라우저로 포트 번호 확인하기
지금 바로 해 볼 수 있는 실습입니다. 목적은 "IP나 도메인 뒤 콜론과 숫자가 포트 번호이고, 443은 HTTPS, 80은 HTTP"라는 개념을 눈으로 확인하는 것입니다. 준비물은 인터넷에 연결된 컴퓨터와 웹 브라우저뿐이고, 비용은 들지 않습니다.
443번 포트로 접속해 보기
1단계. 브라우저 주소창을 클릭한다.
- 확인: 주소창에 글자를 입력할 수 있다.
2단계. 주소창에 아래 주소를 입력한다.
naver.com:443
- 확인: 주소창에 naver.com:443이 들어가 있다.
3단계. 엔터 키를 누른다.
- 확인: HTTPS 네이버로 연결된다.
- 이유: 443번은 HTTPS 연결을 받는 포트이기 때문이다.
열려 있지 않은 포트로 접속해 보기
4단계. 주소창에 아래 주소를 입력한다.
naver.com:44
- 확인: 주소창에 naver.com:44가 들어가 있다.
5단계. 엔터 키를 누른다.
- 확인: 한참 기다리다가 아무것도 연결되지 않는다.
- 이유: 서버마다 원하는 포트를 열어 두거나 닫아 둘 수 있는데, 44번은 열려 있지 않기 때문이다.
80번 포트로 접속해 보기
6단계. 주소창에 아래 주소를 입력한다.
naver.com:80
- 확인: 주소창에 naver.com:80이 들어가 있다.
7단계. 엔터 키를 누른다.
- 확인: HTTPS 네이버로 연결된다.
- 이유: 80번(HTTP)으로 들어오면 443번(HTTPS)으로 옮겨 가도록 네이버 서버에서 설정해 두었기 때문이다. 이런 설정을 리디렉션이라고 한다.
브라우저 종류나 설정에 따라 표시가 조금 다를 수 있습니다. 결과가 다르게 나오면 https://naver.com:443, http://naver.com:80처럼 앞에 프로토콜을 붙여 다시 입력해 봅니다. 주소를 입력해 보는 것뿐이라 되돌릴 설정은 없습니다.
호스팅에서는 안 되는 4가지
- 아무거나 설치하기. Node, Python, PHP, Go 등. AI가 예상 못 한 라이브러리를 가져올 때 호스팅에서 막히는 경우가 많다.
- 백그라운드 작업. 크론(정해진 시각에 자동 실행)으로 매일 데이터 수집, 봇 운영, 배치 처리 같은 것들이다. 호스팅은 한 서버를 나눠 쓰니 이런 작업을 제한한다.
- DB를 마음대로. SQLite, MySQL, PostgreSQL을 필요한 만큼 띄우는 것.
- 자동화 무대. 배포 자동화, 모니터링, AI 에이전트 상주.
크롤러, 자동 글쓰기, 댓글 봇, AI 에이전트처럼 항상 켜져 있어야 하는 프로그램은 노트북을 덮으면 멈춥니다. 서버에서는 자는 동안에도 돕니다. 그래서 서버는 바이브코딩의 마지막 단계라기보다 수익을 내는 첫 단계에 가깝습니다.
호스팅이 더 나은 경우 5가지
- 사이트가 하나뿐이고 늘릴 생각이 없을 때. 다만 사이트가 하나라도 직접 제어할 수 있는 서버를 선호하는 개발자도 많다.
- 완전한 정적 사이트만 운영할 때. 버셀이나 클라우드플레어 페이지스의 무료 구간이 전 세계 캐시 덕분에 더 빠르고 안전할 수 있다.
- 장애가 나면 안 되는 서비스일 때. 서버 한 대에 몰면 그 한 대가 죽을 때 전부 멈춘다. 트래픽이 많은 서비스는 따로 분리하는 걸 고려한다.
- 개인정보나 결제를 크게 다룰 때. 직접 서버는 보안 책임이 전부 나에게 오니 관리형 서비스가 안전할 수 있다. 서버를 쓰기로 했다면 그만큼 더 꼼꼼하게 관리해야 한다.
- 서버를 만질 시간이 정말 없을 때. AI가 도와줘도 최소한의 점검 시간은 필요하다.
일반적인 순서는 이렇습니다. 처음 만든 것은 무료 호스팅으로 배포해 보고, 몇 개 더 만들면 서버로 옮깁니다.
웹서버 소프트웨어와 Nginx
서버는 컴퓨터, 웹서버는 그 위에서 도는 프로그램입니다.
웹서버가 하는 일 5가지
- 80, 443 포트를 열고 요청을 받는다.
- 요청에 담긴 도메인을 보고 어느 사이트(폴더)인지 고른다.
- HTML, CSS, 이미지 같은 정적 파일을 직접 내려준다.
- 필요한 요청은 Node나 PHP 같은 앱에 넘기고 결과를 돌려준다(리버스 프록시).
- HTTPS(SSL) 인증서로 암호화 연결을 처리한다.
Apache와 Nginx의 차이
Apache는 손님마다 직원 한 명을 붙이는 방식에 비유할 수 있습니다. 직관적이고 안정적이지만 손님이 많으면 자원이 많이 듭니다. Nginx는 이벤트 기반이라 직원 몇 명이 여러 손님을 동시에 상대하고, 연결당 메모리가 적습니다.
설정 방식도 다릅니다. Apache는 폴더마다 .htaccess 파일로 설정할 수 있어 편하지만, 요청마다 그 파일을 찾느라 느려질 수 있습니다. Nginx는 중앙 설정 파일로 관리합니다.
웹 기술 조사 사이트 W3Techs의 2026년 10월 1일 집계로, 웹서버를 알 수 있는 사이트 가운데 클라우드플레어가 31.2%, Nginx가 30.8%, Apache가 21.9%, LiteSpeed가 14.3%를 차지합니다. 조사마다 수치는 다르지만 Nginx가 Apache보다 앞서 있습니다.
작은 서버에서 Nginx를 쓰는 이유 3가지
- 메모리 2GB 정도의 작은 서버에 강하다.
- "서버 블록" 설정 한 덩어리가 사이트 한 개라서, 복사하고 두 줄 정도만 고치면 된다.
- 정적 사이트, Node 앱, PHP 앱을 전부 Nginx 뒤에 줄 세울 수 있다.
Apache가 나쁘다는 뜻은 아닙니다. 그누보드 같은 국내 PHP 게시판이나 .htaccess에 기대는 오래된 시스템에는 Apache가 편하고, Nginx를 앞에 두고 Apache를 뒤에 두는 조합도 흔합니다.
사이트 하나 = 폴더 하나 + 설정 다섯 줄 정도
설정 내용은 "이 주소로 들어오면 이 폴더를 보여 줘"가 전부입니다. 정적 사이트 하나의 서버 블록은 보통 아래 모양입니다. example.com과 폴더 경로는 내 것으로 바꿉니다.
server {
listen 80;
server_name example.com;
root /var/www/example;
index index.html;
}
두 번째 사이트는 이 블록을 복사해서 server_name 한 줄과 root 한 줄만 바꾸면 됩니다. Node 앱처럼 앱에 넘겨야 하는 사이트는 root 대신 location / { proxy_pass http://127.0.0.1:3000; }처럼 앱이 도는 포트로 넘기는 줄을 씁니다.
이 설정도 직접 쓰지 않고 AI에게 맡길 수 있습니다. 서버에 SSH로 접속한 터미널에서 클로드 코드 같은 도구에 이렇게 부탁합니다.
이 서버는 우분투 LTS이고 Nginx가 설치돼 있어.
example.com 도메인으로 /var/www/example 폴더의 정적 사이트를 올리고 싶어.
Nginx 서버 블록을 만들고, 설정 문법을 검사한 다음 다시 불러와 줘.
기존 사이트 설정은 건드리지 마.
서버 한 대 운영 전략 4단계
- 적당한 사양으로 한 대 시작한다. 사양은 나중에 금방 올릴 수 있으니 처음부터 완벽하게 고르려 하지 않는다.
- 폴더를 늘린다. 사이트 개수가 늘어도 구조는 그대로다.
- 무거운 것만 분리한다. 트래픽이 크거나 DB를 많이 쓰는 사이트만 따로 빼고, 전부 나눌 필요는 없다.
- 백업과 이미지 스냅샷을 걸어 둔다. 스냅샷이 있으면 서버가 죽어도 새 서버로 빠르게 되살릴 수 있다.
요금 알림은 처음부터
큰 사양을 켜 두고 잊어버리면 억울한 비용이 나옵니다. AWS는 켜 둔 만큼 과금하기 때문입니다. 서버를 만들기 전에 요금 알림부터 설정합니다. AWS에서는 결제 및 비용 관리(Billing and Cost Management) 화면의 예산(Budgets) 메뉴에서 월 예산을 정하고, 그 금액에 가까워지면 이메일을 받도록 할 수 있습니다.
메모리 2GB 서버에 몇 개나 올릴까
정확한 수치가 아니라 참고용 어림값입니다.
- 정적 사이트: 수십 개에서 100개도 가능
- SQLite를 쓰는 작은 앱: 수십 개
- 트래픽 있는 PHP·
Node 앱: 약 4개가 적당. 트래픽이 없으면 수십 개도 괜찮다. - MySQL 서버는 보통 하나만 띄우고 여러 앱이 같이 쓴다.
느려지거나 메모리가 모자라면 한 단계 올리면 됩니다. AWS 라이트세일(Lightsail) 기준으로 메모리 2GB 상품이 월 12달러, 4GB 상품이 월 24달러라 한 단계 올리면 월 12달러가 늘어납니다(2026년 10월 요금).
서버 운영 핵심 다섯 줄
- 서버는 특별한 기계가 아니라 항상 켜져 있고 주소가 있는 컴퓨터다.
- 호스팅은 사이트당, 서버는 서버당 과금이다. 서비스 개수에서 비용이 뒤집힌다.
- 서버의 진짜 값어치는 비용 절감보다 자유도다.
- 작은 서버에는 Nginx가 잘 맞는다. 설정 한 덩어리가 사이트 한 개다.
- 작게 시작해서 폴더로 늘린다. 요금 알림과 백업은 처음부터 건다.
직접 서버를 띄울 때 거치는 작업
실제로 서버를 띄우려면 아래 작업을 거칩니다. 하나하나가 따로 공부할 주제이니, 처음에는 AI에게 단계별로 물어 가며 진행하는 편이 빠릅니다.
- 클라우드 서버 만들기: AWS 같은 클라우드 콘솔에서 운영체제(우분투 LTS)와 사양을 고르고 서버를 만든다.
- SSH로 서버에 접속하기: 서버를 만들 때 받은 키 파일로 터미널에서
ssh -i 키파일.pem ubuntu@서버IP형태로 접속한다. - 도메인 구입과 A 레코드에 서버 IP 넣기
- Nginx 설치와 서버 블록 설정
- HTTPS 인증서 발급: 무료 인증서인 Let's Encrypt를 많이 쓰고, Nginx와 함께 쓸 때는 certbot이라는 도구로 발급과 갱신을 자동화한다.
- 환경 변수와 데이터베이스 설정
- 백업, 이미지 스냅샷, 요금 알림 설정, 서버 사양 올리기
자주 묻는 질문
바이브코딩으로 만든 사이트는 호스팅과 서버 중 어디에 올리나요?
사이트가 하나이고 정적 페이지뿐이라면 버셀이나 클라우드플레어 페이지스 같은 호스팅이 편합니다. 사이트를 여러 개 만들거나 크론·봇·DB가 필요하다면 클라우드 서버 한 대에 모으는 쪽이 비용과 자유도에서 유리합니다.
서버 한 대에 사이트를 여러 개 올려도 안전한가요?
작은 사이트 여러 개는 문제없이 돌아갑니다. 다만 그 서버가 멈추면 모든 사이트가 같이 멈추니, 트래픽이 크거나 장애가 나면 안 되는 서비스는 따로 분리합니다. 스냅샷과 백업은 처음부터 걸어 둡니다.
Nginx와 Apache 중 무엇을 써야 하나요?
메모리 2GB 정도의 작은 서버에 사이트 여러 개를 올린다면 Nginx가 잘 맞습니다. .htaccess에 기대는 PHP 게시판처럼 Apache 기준으로 만들어진 프로그램을 쓴다면 Apache가 편하고, 둘을 함께 쓰는 구성도 흔합니다.
naver.com:44를 입력하면 왜 아무것도 안 뜨나요?
네이버 서버가 44번 포트를 열어 두지 않았기 때문입니다. 웹은 보통 80번(HTTP)과 443번(HTTPS)만 열어 두고, 닫힌 포트로 들어오는 연결은 받지 않습니다.
이 글의 본문은 아래 원본 유튜브 영상의 내용을 바탕으로 쓸모연구소가 다시 정리해 쓴 것입니다. 세부 내용과 최신 정보는 원본 영상과 공식 안내에서 확인해 주세요.
원본 영상 보러가기 ↗