HTTP의 이해
* HTTP 개요
* HTTP Request
* HTTP Response
HTTP 개요
* 정의
- HTTP(Hyper Text Transfer Protocol)
- WWW 상에서 정보를 공유하는 프로토콜 - Port 80 - HTML
- HTML(HyperText Markup Language) - 웹페이지 언어
- 팀 버너스 리 - 1989년 WWW 프로젝트 제안
- 1996년 HTTP v1.0 - RFC 1945
- 1999년 HTTP v1.1 - RFC 2616 - 개선 및 업데이트
- 2015년 HTTP/2 - RFC 7540
- https://www.w3.org/Peoplr/Berners-Lee
* URL (Uniform Resource Locator) : 웹 페이지를 찾기 위한 주소
* http://www.naver.com:80/index.html
* HTML(HyperText Markup Language) : 웹 페이지 언어
- 1995년 HTML 2.0 - RFC 1866, 2014년 HTML5
HTTP Request
* Client가 Server에게 특정 Method를 사용하여 요청하는 것
- Head(+Start Line), Body로 구성
- Start Line : HTTP Method / Request target / HTTP version
- HTTP Method : 요청 목적 - GET, POST, PUT, HEAD, DELETE
- GET : 리소스 요청, POST : 내용 전송(암호화), PUT : 내용 갱신
, HEAD : 리소스에 대한 정보만 요청, DELETE : 리소스 제거
- Request target : 리소스 경로
- HTTP version : HTTP1.1 or HTTP/2
* Head
- Accept : 클라이언트가 허용 가능한 파일 형식
- User-Agent : 클라이언트의 OS, 브라우저 정보
- Host : 서버의 도메인 네임
HTTP Response
* Client 요청에 따른 Server의 응답이다
- Head + Body
- Version / Status / Status Message
- Version : HTTP 버전, Status : 상태, Status Message : 상태 메시지
- Date, Content-location, etag : 캐시 정보 업데이트
- Last-modified : 요청한 데이터의 최종 수정일
- Content-Length : 요청한 데이터 길이
* 응답 헤더
* Status Code
* https://www.w3.org/Protocols/rtf2616/rfc2616-sec10.html
* 2** Success - 200 OK
* 3** Redirection - 307 Temporary Redirect
* 4** Client Error
- 400 Bad Request
- 401 Unauthorized
- 404 Not Found
* 5** Server Error
- 500 Internal Server Error
- 502 Bad Gateway
- 503 Service Unavailable
※ 정리
* HTTP(HyperText Transfer Protocol)는 WWW 상에서 정보를 공유하는 프로토콜
* HTML(HyperText Markup Language) - 웹페이지 언어
* 1999년 HTTP v1.1 - RFC 2616, 2015년 HTTP/2 - RFC 7540
* URL(Uniform Resource Locator)은 웹 페이지를 찾기 위한 주소
* HTTP 통신은 Request-Client와 Response-Server로 구성
* HTTP 주요 요청 메소드로 GET, POST, PUT 등이 있다
* HTTP 주요 응답 코드로 200 Ok, 404 Not Found, 504 Service Unavailable 등이 있다
출처 : 제로베이스
'공부 Note > 네트워크' 카테고리의 다른 글
Chapter 07 애플리케이션 서비스 (4) (0) | 2022.02.24 |
---|---|
Chapter 07 애플리케이션 서비스 (3) (0) | 2022.02.24 |
Chapter 07 애플리케이션 서비스 (1) (0) | 2022.02.24 |
Chapter 06 TCP와 NAT (4) (0) | 2022.02.24 |
Chapter 06 TCP와 NAT (3) (0) | 2022.02.24 |