개발 공부/서버
[서버 기초] HTTP란? 웹에서 요청과 응답이 오가는 원리
악마의 개발자
2025. 3. 26. 20:00
반응형

💡 “서버는 어떻게 내 말을 알아듣는 걸까?”
우리가 브라우저에 주소를 치고 엔터를 치면
서버가 척! 하고 정보를 보내줘요.
하지만 질문! 👀
“서버는 도대체 내가 뭘 원하는지 어떻게 아는 걸까요?”
정답은 바로,
HTTP라는 약속된 통신 규칙 덕분이에요! 💬
오늘은 이걸 아주 쉽게 설명드릴게요.
🌐 HTTP란?
HTTP는 HyperText Transfer Protocol의 약자로,
웹에서 정보를 주고받기 위한 약속된 규칙(프로토콜)이에요.
📬 쉽게 말해,
“클라이언트와 서버가 서로 대화할 때 쓰는 언어”
“브라우저가 서버에게 요청하고, 서버가 응답하는 형식”
🔁 요청과 응답, 어떻게 이루어질까?
웹에서는 아래처럼 통신이 이루어져요:
- 🙋♀️ 클라이언트(브라우저): “이 페이지 좀 보여줘요!”
- 🖥️ 서버: “알겠어요, 여기 정보 보내드릴게요!”
- 💻 클라이언트: 받은 정보를 화면에 출력
이때 사용되는 통신 방식이 바로 HTTP입니다.
🔑 HTTP 요청의 구성요소
HTTP 요청은 단순히 “정보 주세요~”가 아니라,
정해진 형식에 따라 데이터를 전달합니다. 주요 구성은 다음과 같아요:
- 요청 메서드(Method): 어떤 행동을 원하는지 (예: GET, POST)
- 요청 URL: 어떤 자원에 대한 요청인지
- 헤더(Header): 추가 정보 (예: 사용자 정보, 인증 정보)
- 본문(Body): 실제로 보내는 데이터 (주로 POST에서 사용)
📮 자주 쓰는 HTTP 메서드 2가지
1. GET
- 데이터를 요청할 때 사용
- 예: “게시글 목록 좀 보여주세요”
- 주소창에 정보가 노출됨
- 주로 조회용 요청에 사용
2. POST
- 데이터를 서버에 보낼 때 사용
- 예: “회원가입 정보 보내드릴게요”
- 주소창에 안 보이고, Body에 담겨 전송됨
- 주로 등록/수정/로그인 등에 사용
📦 HTTP 응답(Response)은 어떻게 오나요?
서버는 요청을 받고, 응답할 때도 정해진 구조로 보내줘요.
- 상태 코드(Status Code): 요청 성공 여부 표시
- 헤더(Header): 응답 정보
- 본문(Body): 실제 데이터 (예: HTML, JSON)
🚨 상태 코드는 이런 의미예요!
상태 | 코드의미 |
200 | 성공 |
404 | 페이지를 찾을 수 없음 |
500 | 서버 내부 오류 |
403 | 접근 권한 없음 |
301 | 다른 주소로 이동했어요 (리다이렉트) |
📌 예시로 쉽게 정리!
🙋♂️ 나: “GET /news”
📨 서버: “200 OK + 뉴스 페이지 HTML”
🙋♀️ 나: “POST /login”
📨 서버: “200 OK + 로그인 성공 메시지 or 실패 안내”
🧠 정리 한마디!
- HTTP는 클라이언트와 서버가 정보를 주고받는 규칙입니다.
- 요청(Request) → 서버 처리 → 응답(Response)
- GET은 “가져오기”, POST는 “보내기”
- 응답 코드로 성공/실패를 판단할 수 있어요!
📌 다음 예고: “HTTPS는 뭐가 다른가요? 보안은 어떻게 이루어지나요?”
- HTTP랑 HTTPS의 차이점은?
- 인증서, 암호화, SSL, TLS까지 한 방에 이해해보기!
- 실무에서 HTTPS를 적용하는 이유
[서버 기초] HTTPS란? HTTP랑 뭐가 다르고, 왜 중요할까?
💡 “요즘 사이트 주소에 자물쇠 아이콘 보셨나요?”브라우저 주소창 왼쪽에 🔒 자물쇠 아이콘이 보인다면,그 웹사이트는 HTTPS를 사용하고 있다는 뜻이에요.그런데 궁금하지 않으세요?“HTTP랑
it-afternoon.tistory.com
반응형