[개념정리] HTTP / HTTPS란?

Luna(수경)·2023년 9월 12일

HTML

목록 보기
2/2
post-thumbnail

📌 HTTP란?

Hyper Text Transfor Protocol의 약어,
웹 상에서 HTML, CSS, JS와 같은 데이터를 주고 받기 위한 프로토콜


프로토콜은 뭘까?
프로토콜은 컴퓨터 또는 전자기기 간의 데이터 전송을 오류없이 효율적으로 구현하기 위한 약속!
신호 처리법, 오류처리, 암호, 인증 , 주소 등을 포함한다.

(출처 : https://www.seobility.net/de/wiki/HTTP_Header)

HTTP는 웹브라우저(Client)와 서버(Server)가 서로 데이터를 주고받는 통신 규약이고 웹 브라우저가 서버에 정보를 요청(Request)하고 서버는 이 요청에 응답(Response)해서 정보를 제공하는 과정!


📌 HTTP Request & Response 구조

1) Request Message 구조

Request Message는 공백(blank line)을 제외하고 Start Line Headers Body 3가지로 나누어진다.

🔸 Start Line(시작 라인)

  • HTTP Method
    GET, POST, PUT, DELETE, OPTIONS 등 요청의 의도를 담음

  • Request Target
    전송되는 목표 주소(URL)

  • HTTP Version
    HTTP 버전으로 대부분 HTTP/1.1이고 2, 3까지도 존재함

📍

GETindex.htmlHTTP/1.1
HTTP MethodRequest TargetHTTP Version

🔸 Header(헤더)

HTTP 통신을 위해 필요한 정보들이 입력되어있는 데이터 영역.

  • Host : 요청하려는 서버 호스트 이름과 포트 번호. ex) naver.com
  • User-agent : 요청을 보내는 클라이언트 프로그램 정보.
  • Referer : 현재 요청된 페이지 이전의 페이지 주소.
  • Accept : 클라이언트가 허용할 수 있는 파일 형식.
  • Cookie : 클라이언트에게 설정된 쿠키 정보.
  • Content-Type : Request에 실어 보내는 데이터의 type 정보.
  • Content-Length : Request에 실어 보내는 데이터의 길이.

🔸 Body(바디)

HTTP Request가 전송하는 데이터를 담고 있는 부분.
전송하는 데이터가 없으면 이 부분은 비어있음.


2) Response Message 구조

Response Message는 Request Message와 동일하게 공백(blank line)을 제외하고 Status Line(Start Line) Headers Body 3가지로 나누어진다.

🔹 Status Line(Start Line, 시작 라인)

  • HTTP Version
    응답 온 메세지의 HTTP 버전 정보

  • Status code
    응답 코드 ex) 200, 404 등

  • Status text
    응답 상태 ex) OK, Not Found 등

📍

HTTP/1.1200OK
HTTP VersionStatus codeStatus text

🔹 Header(헤더)

Request의 Header와 동일

  • Date : 응답 온 일시
  • Server : 웹 서버의 종류(Request의 User-Agent 대신 사용)

🔹 Body(바디)

Response의 데이터를 담고 있는 부분.
Request와 동일하게 전송하는 데이터가 없으면 이 부분은 비어있음.


📌 HTTPS란?

Hyper Text Transfor Protocol Secure의 약어,
HTTP에 데이터 암호화가 추가된 프로토콜

🔑 표준 HTTP와 동일한 방식으로 작동함.
🔑 서버에서부터 브라우저로 전송되는 정보가 암호화되지 않는다는 문제점을 SSL(보안 소켓 계층) 을 사용함으로써 문제 해결!

1) HTTPS의 장점

  • 사용자가 사이트에 제공하는 정보를 암호화하기때문에 보안성이 강하다.
  • 사용자들에게 신뢰를 얻을 수 있다.
  • 검색엔진 최적화(SEO)에서 혜택을 본다.
    - 구글은 HTTPS(SSL) 유무를 검색 순위의 결정 요소에 포함한다. (보안이 좋은 웹 사이트일 수록 사용자들이 더 많이 이용하기 때문!)

2) HTTPS의 단점

  • 인증서(SSL) 유지를 위한 비용이 추가적으로 발생
  • 암호화된 정보를 교환하기 때문에 HTTP에 비해 속도가 느림

참고 사이트
https://hahahoho5915.tistory.com/62
https://programmer93.tistory.com/60
https://ohcodingdiary.tistory.com/5

0개의 댓글