본문 바로가기

Web H&S/Web Basic

HTTP Request & Response

 - HTTP는 Header 와 빈 공백, Body로 나누어지며
 - HTTP는 Header 에는 주소정보 등이 포함되며
 - HTTP는 Body 에는 요청한 메시지 정보가 포함된다.

1) HTTP Request


★ HTTP Request 에 포함된 상세 정보


1) Method
    ( Get, Post )  ( 경로 및 파일명 )  ( HTTP 프로토콜 버전 )

1-1) Method 의 종류

Head - 자료에 대한 헤더정보( Meta - Information ) 만 받음
Get - URL에 해당하는 자료의 전송을 요청
Get - URL 정보로 해당 페이지에 바로 접근 가능
Post - 데이터의 크기에 제한없이 서버가 처리할 수 있는 자료를 전송
Put - 클라이언트에서 전송받은 정보를 서버에 저장
Delete - 해당 URL의 자료를 삭제
Trace - 실제 본문을 요청한 상태를 다시 요청 (주로 디버깅에 이용함.)
Options - 어떤 옵션이 있는지 물음 (요청한 URL은 서버전체를 의미하도록 * 표시로 대신함)
Connect - 프록시가 사용하는 요청 (SSL <Secure Socket Layers> 에 예약된 메소드)
Move - 서버에 저장된 자료의 위치나 파일명을 변경


2) Header
    ( Accept : ) - 응답 메시지에 대해 허용할 수 있는 미디어 종류
    ( Accept - Language : ) - 응답에 대해 선호하는 언어
    ( Cookie : ) - 클라이언트에서 가지고 있는 정보
    ( User - Aent : ) - 응답 내용에 대해 응답할 수 있는 브라우저 종류
    ( Host : ) - 응답을 요청한 호스트
    ( Proxy - Connection : ) - 프록시 연결을 사용
    ( Referer : ) - 현재 페이지 접속 전에 어느 사이트를 경유 했는지를 알려주는 도메인 혹은 URL 정보가 포함

※ Cookie 형식
    Set - Cookie : Version = [버젼번호]; Name = [쿠키이름]; Path = [URL 상대 경로];
                         Domain = [도메인명]; Comment = [코멘트]; Expires = [유효기간];

    Name = [쿠키이름] : 설정하고자 하는 쿠키 이름
    Path = [URL 상대경로] : 쿠키와 연결되는 URL 정보
    Expires = [유효기간] : 쿠키의 유효시간이며 사전 정의된 시간 초과시 재인증 후 발급


3) Entity body
    Post Method를 사용하여 웹 서버에 요청시 id나 pw와 같은 전달할 값을 포함할 수 있음.






2) HTTP Response


★ HTTP Response 에 포함된 상세 정보


1) Response code
    ( 프로토콜 버전 )  ( 상태코드 )

상태 코드                    설명

100~199                    정보
200~290                    클라이언트의 요청이 성공적임
300~390                    다른 동작이 더 필요하여 클라이언트의 요청을 리다이렉트
400~490                    클라이언트 오류
500~590                    서버 오류


※ 자세한 오류 정보 내용

100 : Continue
101 : Switching protocols
200 : OK, 에러없이 전송 성공
201 : Created, POST 명령 실행 및 성공
202 : Accepted, 서버가 클라이언트 명령을 받음
203 : Non-authoritative information, 서버가 클라이언트 요구 중 일부 만 전송
204 : No content, 클라언트 요구을 처리했으나 전송할 데이터가 없음
205 : Reset content
206 : Partial content
300 : Multiple choices, 최근에 옮겨진 데이터를 요청
301 : Moved permanently, 요구한 데이터를 변경된 임시 URL에서 찾았음
302 : Moved temporarily, 요구한 데이터가 변경된 URL에 있음을 명시
303 : See other, 요구한 데이터를 변경하지 않았기 때문에 문제가 있음
304 : Not modified
305 : Use proxy

400 : Bad request, 클라이언트의 잘못된 요청으로 처리할 수 없음
401 : Unauthorized, 클라이언트의 인증 실패
402 : Payment required, 예약됨
403 : Forbidden, 접근이 거부된 문서를 요청함
404 : Not found, 문서를 찾을 수 없음
405 : Method not allowed, 리소스를 허용안함
406 : Not acceptable, 허용할 수 없음
407 : Proxy authentication required, 프록시 인증 필요
408 : Request timeout, 요청시간이 지남
409 : Conflict
410 : Gone, 영구적으로 사용할 수 없음
411 : Length required
412 : Precondition failed, 전체조건 실패
413 : Request entity too large,
414 : Request-URI too long, URL이 너무 김
415 : Unsupported media type

500 : Internal server error, 내부서버 오류(잘못된 스크립트 실행시)
501 : Not implemented, 클라이언트에서 서버가 수행할 수 없는 행동을 요구함
502 : Bad gateway, 서버의 과부하 상태
503 : Service unavailable, 외부 서비스가 죽었거나 현재 멈춤 상태
504 : Gateway timeout
505 : HTTP version not supported



2) Header
    ( Date : ) - 응답 시간
    ( Server : ) - 응답 서버 정보
    ( Last_Modified : ) - 최근 응답페이지 수정일
    ( Etag : ) - 관련된 실체(Entity)의 태그
    ( Accept - Ranges : ) - 받을 수 있는 요청 범위의 형식
    ( Content - Length : ) - 내용의 길이
    ( Content - Type : ) - 내용의 형식, MIME 타입의 정보가 표시
    ( Via : ) - 요청에서 클라이언트와 서버, 통신 중간에 프로토콜과 수신자.
    ( Age : ) - 서버에서 생성된 페이지(정보)에 대한 예상시간
    ( Expires : ) - 내용이 만료되는 예상 시간
    ( Connection : ) - 연결 형태

※ MIME Type 종류 ( wordpad로 열어 보세요 )



3) Entity body
    클라이언트가 요청한 페이지 내용과 같은 전달할 값


















'Web H&S > Web Basic' 카테고리의 다른 글

Web Log - W3C, NCSA 유형  (0) 2010.12.06
HTTP 메소드 종류 및 로그에 남는 정보  (0) 2010.12.06
Get & Post Method  (0) 2010.11.29
HTTP 세션 연결 및 세션 종료 과정  (0) 2010.11.29
Web Protocol ( 통신 절차 )  (0) 2010.11.29