Hyper Text Transfor Protocol의 약어,
웹 상에서 HTML, CSS, JS와 같은 데이터를 주고 받기 위한 프로토콜
✋ 프로토콜은 뭘까?
프로토콜은 컴퓨터 또는 전자기기 간의 데이터 전송을 오류없이 효율적으로 구현하기 위한 약속!
신호 처리법, 오류처리, 암호, 인증 , 주소 등을 포함한다.
(출처 : https://www.seobility.net/de/wiki/HTTP_Header)
HTTP는 웹브라우저(Client)와 서버(Server)가 서로 데이터를 주고받는 통신 규약이고 웹 브라우저가 서버에 정보를 요청(Request)하고 서버는 이 요청에 응답(Response)해서 정보를 제공하는 과정!
Request Message는 공백(blank line)을 제외하고 Start Line Headers Body 3가지로 나누어진다.

HTTP Method
GET, POST, PUT, DELETE, OPTIONS 등 요청의 의도를 담음
Request Target
전송되는 목표 주소(URL)
HTTP Version
HTTP 버전으로 대부분 HTTP/1.1이고 2, 3까지도 존재함
📍
| GET | index.html | HTTP/1.1 |
|---|---|---|
| HTTP Method | Request Target | HTTP Version |
HTTP 통신을 위해 필요한 정보들이 입력되어있는 데이터 영역.
Host : 요청하려는 서버 호스트 이름과 포트 번호. ex) naver.comUser-agent : 요청을 보내는 클라이언트 프로그램 정보.Referer : 현재 요청된 페이지 이전의 페이지 주소.Accept : 클라이언트가 허용할 수 있는 파일 형식.Cookie : 클라이언트에게 설정된 쿠키 정보.Content-Type : Request에 실어 보내는 데이터의 type 정보.Content-Length : Request에 실어 보내는 데이터의 길이.HTTP Request가 전송하는 데이터를 담고 있는 부분.
전송하는 데이터가 없으면 이 부분은 비어있음.
Response Message는 Request Message와 동일하게 공백(blank line)을 제외하고 Status Line(Start Line) Headers Body 3가지로 나누어진다.

HTTP Version
응답 온 메세지의 HTTP 버전 정보
Status code
응답 코드 ex) 200, 404 등
Status text
응답 상태 ex) OK, Not Found 등
📍
| HTTP/1.1 | 200 | OK |
|---|---|---|
| HTTP Version | Status code | Status text |
Request의 Header와 동일
Date : 응답 온 일시Server : 웹 서버의 종류(Request의 User-Agent 대신 사용)Response의 데이터를 담고 있는 부분.
Request와 동일하게 전송하는 데이터가 없으면 이 부분은 비어있음.
Hyper Text Transfor Protocol Secure의 약어,
HTTP에 데이터 암호화가 추가된 프로토콜
🔑 표준 HTTP와 동일한 방식으로 작동함.
🔑 서버에서부터 브라우저로 전송되는 정보가 암호화되지 않는다는 문제점을 SSL(보안 소켓 계층) 을 사용함으로써 문제 해결!
참고 사이트
https://hahahoho5915.tistory.com/62
https://programmer93.tistory.com/60
https://ohcodingdiary.tistory.com/5