약 한달간의 HTTP 완벽 가이드 스터디 후 요약을 적어보고자 한다.
HTTP = 현대 인터넷의 공용어
http는 신뢰성 있는 데이터 전송 프로토콜을 사용하기 때문에, 데이터를 보장할 수 있다.
웹의 기본요소 = http 클라이언트, http 서버
리소스에는 정적 + 동적 리로스가 있다.
웹 콘텐츠의 원천이다.
어떤 종류의 콘텐츠 소스도 리소스가 될 수 있다.
웹 서버는 모든 http 객체 데이터에 MIME 타입을 붙인다.
MIME 타입은 / 로 주 타입과 부 타입으로 구분되어 있다.
통합 자원 식별자(Uniform resource identifier)
정보 리소스를 고유하게 식별한다. (인터넷의 우편물 주소)
통합 자원 지시자(uniform resource locator)
리소스 식별자의 흔한 형태로, 특정 서버의 한 리소스에 대한 구체적인 위치를 서술한다.
스킴, 주소, 리소스로 구분되어있다.
유니폼 리소스 이름(uniform resource name)
리소스에 위치에 영향을 받지 않고 이름으로 접근한다.
http 트랜잭션 = 요청명령 + 응답 결과 로 구성
요청 명령의 여러 종류.
ex) GET POST PUT 등
응답 메세지에 함께 반환되는 응답에 대한 상태
사유 구절과 함께 반환되지만 사유구절은 사람이 인식하기 편하게 하기위한 수단일 뿐 유효한 동작은 하지않는다.
ex) 200 ok / 304 redirect 등
보통 하나의 작업을 수행하기 위해 여러 http 트랜잭션을 수행한다.
(웹 페이지는 리소스의 모음이므로 각 리소스별로 트랜잭션이 수행됌)
단순한 줄 단위의 문자열
시작줄 / 헤더 / 본문 으로 구성되어있다.
TCP = Transmission Control Protocol, 전송 제어 프로토콜
http 는 애플리케이션 계층 프로토콜이고 통신의 핵심 세부사항은 TCP / IP에 위임한다.
TCP는 전송 계층으로
을 제공한다.
IP는 네트워크 계층이다.
IP주소와 포트번호로 클라이언트와 서버간 커넥션을 맺어야 통신이 가능해진다.
DNS(Domain Name Service, 도메인 이름 서비스)가 있다.
통신 순서는 책 참조 p.15
프락시
- http 중개자.
- 보안을 위해서 사용.
- 요청과 응답을 필터링한다
캐시
- 자주 찾는 페이지를 보관하는 http 창고로 사본을 저장한다.
게이트웨이
- 다른 애플리케이션과 연결된 웹 서버
- 진짜 서버인 것처럼 행동한다.
터널
- http 통신을 전달하기만 하는 프락시
- 데이터를 열지 않고 전달하기만 한다.