HomeAboutMeBlogGuest
© 2025 Sejin Cha. All rights reserved.
Built with Next.js, deployed on Vercel
📖
공부한 책
/
1%의 네트워크 원리
1%의 네트워크 원리
/1장 웹 브라우저가 메시지를 만든다/
HTTP 리퀘스트 메시지를 작성한다 (URL, HTTP)

HTTP 리퀘스트 메시지를 작성한다 (URL, HTTP)

1. URL 입력2. URL 해독3. HTTP 의 기본 개념4. HTTP 리퀘스트 메시지 만들기5. 리퀘스트를 보내면 응답이 돌아온다

1. URL 입력

  • URL은 http 뿐 아니라 ftp:, file: mailto: 등 여러 프로토콜이(file은 프로토콜 x) 가능함 ( 브라우저가 웹 서버에 액세스하는 클라이언트로 사용되는 경우가 많지만, 브라우저의 기능이 그뿐만은 아님)
    • 파일 다운로드/업로드하는 FTP의 클라이언트 기능이나 메일의 클라이언트 기능도 포함

2. URL 해독

  • URL의 요소
    • http: + // + 웹 서버명 + / + 디렉토리명 + / + … + 파일명 (데이터 출처의 경로명)
    • http://web.lab.cyber.co.kr/dir1/file1.html
  • 파일명을 생략한 경우 (http://www.lab.cyber.co.kr/dir/)
    • index.html, default.htm이라는 기본 파일명을 찾게 됨

3. HTTP 의 기본 개념

  • 리퀘스트 메시지 안에는 ‘무엇을'(URI) , ‘어떻게 해서'(HTTP Method) 하겠다는 내용이 쓰여있음
    • URI에는 보통 페이지 데이터를 저장한 파일의 이름이나 CGI 프로그램의 파일명을 URI로 씀
    • 예 ) /dir1/file1.html. , /dir1/program1.cgi
    • URI는 그것만이 아니라 여기에 http: 로시작하는 URL을 그대로 쓸 수도 있음

4. HTTP 리퀘스트 메시지 만들기

  • 브라우저는 해독한 URL을 바탕으로 HTTP 리퀘스트 메시지를 만든다
<메소드><공백><URI><공백><HTTP 버전> // 리퀘스트 라인 <필드명>:<필드값> // 메시지 헤더. 한 행에 한 개의 헤더 필드 .. .. <공백 행> <메시지 본문> // 클라이언트에서 서버에 송신하는 데이터
리퀘스트 메시지
<HTTP 버너><공백><스테이터스 코드><공백><응답 문구> // 스테이터스 라인 <필드명>:<필드값> // 메시지 헤더 ... ... <공백 행> <메시지 본문> // 서버에서 클라이언트에 송신하는 데이터
응답 메시지

5. 리퀘스트를 보내면 응답이 돌아온다

  • 리퀘스트 메시지에 쓰는 URI는 한 개만으로 결정되어 있으므로 한번에 한 개씩만 읽을 수 있음
  • 만약 응답에 영상 파일을 나타내는 태그라는 제어 정보가 포함되어 있으면 브라우저는 그곳에 영상용 공백을 비워두고 문장 표시 후, 웹 서버에 다시 리퀘스트를 보냄
  • 즉, 응답에 3개의 영상이 포함되어 있으면 문장 파일 읽는 리퀘스트 1, 영상 파일 읽는 리퀘스트 3개 총 4회 리퀘스트 메시지를 보내게 됨
리퀘스트 메시지에 쓰는 URL은 하나뿐으로, 복수의 파일을 읽을 때는 웹 서버에 별도의 리퀘스트 메시지를 보냄