HTTP Request 형식 : 첫 번째 줄 -> GET / HTTP/1.1 (메소드, URL, Version 순)
첫 줄만 잘 지키면 나머지는 옵션
Request에서 마지막 빈줄(CRLT CRLT)가 헤더의 끝을 의미함
해당 형식의 취약점 공격 기법 Slow loris공격 : 헤더 크기의 제한이 없으니, 조금조금씩 보냄, 요청을 안 끝냄(빈줄이 안옴)
쿼리 스트링 형식 http://www.naver.com/search?abc=1 (여기서 ?를 의미) 은 보통 GET 메소드
로그인했다는 상태를 기록하기 위해 쿠키를 사용(클라이언트가 기억)
HTTP는 Stateless
쿠키는 서버가 만들고 서버가 먹는다. (서버 자신만의 인코딩 방식)
POST 클라이언트 -> 서버(정보 작성), PUT 업데이트용(수정)
Header CRLT CRLT Body (GET 메소드와는 다르게 빈줄 뒤에 Body가 옴)
HTTP Response 형식 : HTTP1.1 200 OK (HTTP 상태코드)
HTTP 상태코드
100번대 - 정보전송
200번대 - 성공
300번대 - 리다이렉션
400번대 - 클라이언트 측 에러
500번대 - 서버 측 에러
non-persistence 비지속성 HTTP 1.0
TCP 연결(connect) -> Request -> Response -> 연결 끊음
persistence 지속성 HTTP 1.1
TCP 연결(connect) -> Reqest -> Response -> 일정시간동안 대기 -> Request -> Response
서버 기능 : 입력 값에 따라 동적 기능 제공
웹 애플리케이션이 이용하는 서버 측 기능 -> 서버 측 스크립트 언어, 웹 서버, DB
마크업 : 어떠한 표시(ex. 글자폰트)
CERN의 팀버너스리가 HTML 제안
자바스크립트 - 객체 기반의 스크립트 프로그래밍 언어