[Web] 웹 프로토콜

애이용·2020년 12월 3일

web

목록 보기
1/3
post-thumbnail

HTTP는 Header와 빈 공백, Body로 나눠지고, 헤더에는 주소 정보 등이 포함, 바디에는 요청한 메시지 정보 포함

요청 헤더에 포함되는 정보들

1) GET /index.html HTTP/1.1 : 데이터 처리 방식(HTTP Method)와 기본 페이지, 프로토콜 버전'

2) user-agent: MSIE 6.0; Windows NT 5.0
: 사용자의 웹 브라우저 종류 및 버전 정보가 포함 -> 위의 예시) 인터넷 익스플로러 6.0 사용자

3) accept: text/html;
: 웹 서버로부터 수신되는 데이터 중 웹 브라우저가 처리할 수 있는 데이터 타입
: text/html은 text, html 형태의 문서를 처리할 수 있고,
/ 는 모든 문서를 처리할 수 있다는 의미(이를 MIME 타입이라고 부르기도 함)
: text/html, text/plain, image/gif, image/jpeg, application/postscript . . .

4) cookie
: HTTP 프로토콜 자체가 세션을 유지하지 않는 State-Less(접속상태를 유지하지 않는) 방식이기 때문에 로그인 인증을 위한 사용자 정보를 기억하려고 만든 인위적인 값, 사용자가 정상적인 로그인 인증 정보를 가지고 잇다는 것을 판단하려고 사용

5) referer : 현재 페이지 접속 전에 어느 사이트를 경유했는지를 알려주는 도메인 혹은 URL 정보 포함

6) HOST : 사용자가 요청한 도메인 정보 포함

GET / POST

GET 메서드 : 페이지 혹은 페이지와 파라미터가 포함된 값을 요청할 수 있고, 해당 값은 일반적으로 웹 브라우저 주소창에서 확인할 수 있다.

POST 메서드: 대용량 데이터 처리를 위해 Body에 html 폼(로그인 입력 및 게시판 입력글) 등의 데이터를 포함할 수 있다. 사용자가 입력한 데이터는 시스템 내부적으로 처리되어 웹브라우저 주소창에는 페이지 정보만 보이게 됨
POST 메서드는 GET 메서드와 달리 Header 다음에 빈 공백 1줄과 함께 Body 데이터가 포함됨

cf) \r\n == 엔터키

수신 Header 및 Body에 포함되는 정보들

1) HTTP/1.1 OK 200
: 웹 프로토콜 버전 및 응답 코드 정보 포함

2) Server: NCSA/1.4.2
: 웹 애플리케이션 종류 및 버전 정보 포함

3) Content-type : text/html
: MIME 타입 정보 포함

4) Content-length : 107
: 수신 Body 사이즈 정보가 포함됨

5) 사용자가 요청한 웹 페이지 정보 포함


응답코드

(많이 봤던 것부터 정리)

200 OK
404 Not found (요청한 페이지 없음)
400 Bad request(사용자의 잘못된 요청을 처리할 수 X)
401 Unauthorized(인증이 필요한 페이지 요청한 경우)
403 Forbidden(접근 금지, 디렉터리 리스팅 요청 및 관리자 페이지 접근 등을 차단)
405 Method not allowed(허용되지 않는 http method 사용)
406 No Acceptable 알맞은 컨텐츠 타입이 없다는 것을 의미한다.
500 Internal server error(내부 서버 오류)

100 Continue(클라이언트로부터 일부 요청을 받앗고, 나머지 정보를 계속 요청)
201 Created (PUT 메서드에 의해 원격지 서버에 파일이 정상적으로 생성)
202 Accepted (웹 서버가 명령 수신)

profile
로그를 남기자 〰️

0개의 댓글