HTTP란?
FrontEnd/웹 지식

HTTP란?

728x90

HTTP란 HyperText Transfer Protocol의 약자이다.

 

결국 웹은 클라이언트와 서버와의 관계이다.

 

 

클라이언트가 HTML을 Request 하면 서버는 Response를 줄 것이다.

 

이러한 과정에서는 서로 소통할 수 있게 약속된 메시지의 룰이 필요하다. 이 역할을 해주는 것이 HTTP이다.

 

 

만약 어떤 웹페이지를 개발자도구의 네트워크 탭에 들어가보면

 

위와같이 수많은 파일들을 주고받는것을 알 수 있다.

 

 

html 파일의 header를 보면

 

위와같이 request의 정보나, 수신 상태 등을 알 수 있다. 

 

웹브라우저는 이러한 응답 헤더를 만들어서 서버에 보내고, 받은 정보를 토대로 웹브라우저에 그려주는 역할을 한다.

 

그럼 이제 request와 response에 대해서 조금 더 알아보자.

 

 

 

request 

 

클라이언트가 서버로 요청하는것

 

 

request 형식

request를 보낼대는 위와같이 헤더를 넣어주고, 한 줄을 띄운 후에 body 즉 내용이 들어가게 된다.

 

 

위와같이 헤더가 시작된다면,

 

get방식으로 map이라는 파일을 요청했고, HTTP규칙은 1.1을 사용했다는 의미가 된다.

 

Host에는 웹사이트의 도메인이 들어간다.

 

User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/105.0.0.0 Safari/537.36

 

 

User-Agent를 보면, 웹요청 유저의 정보를 알 수 있다.

 

 

Accept-Encoding 은 웹서버가 지원하는 압축 방식을 나타낸다.

 

 

 

 

 

 

 

 

Response

서버가 클라이언트로 보내는 응답메시지이다.

 

이 역시 HTTP Response 형태를 보면 조금 더 이해할 수 있다.

 

 

HTTP 1.1방식을 보고, response stats를 알 수 있다. 200번대는 정보수신이 성공했다는 긍정적인 메시지를 나타낸다.

 

300번대는 Redirections 즉 페이지이동을 나타내고

400번대는 접속해서 안되는 곳에 접속했을때 메시지이고

500번대는 서버쪽에 오류가 있을때를 나타낸다.

 

그 다음부터는 헤더들이 나타난다.

 

 

예를들어 다음 헤더는 Content의 타입을 나타낸다. 다른 헤더들도 컨텐츠들의 내용들을 나타낸다.

 

 

 

 

HTTP vs HTTPS(SSL)???

 

 

 

HTTPS의 s는 security 즉, 보안을 나타낸다.

 

HTTP가 처음 나왔을때는 보안에 큰 문제가 되지 않았지만, 점점 웹이 커지면서 문제가 커지게 되었다. 따라서 중간에 정보를 가로채도 해당정보내용을 알 수 없는 HTTPs가 나오게 되었다.

 

 

 

728x90

'FrontEnd > 웹 지식' 카테고리의 다른 글

리액트 build파일 경로 설정  (0) 2022.09.26
쿠키  (0) 2022.09.20
Unix와 Windows 파일 시스템  (0) 2022.08.30
정규표현식  (0) 2022.08.30
자바스크립트 타이머함수  (0) 2022.08.30