본문 바로가기
개인 공부/Network (그림으로 배우는 Http&Network Basic)

Http&Network Basic : HTTP와 연계하는 웹 서버 (5장)

by 희조당 2023. 6. 13.
728x90

🙋 HTTP와 연계하는 웹 서버

5.1 1대로 멀티 도메인을 가능하게 하는 가상 호스트

  • HTTP/1.1에서 가상 호스트를 사용하면 1대의 서버로 여러 서버가 있는 것처럼 보일 수 있다.
  • 특정 도메인으로 호출해도 IP주소로 변환되어 서버로 도착한다.
  • 따라서 어떤 도메인을 요청하는지 모르기 때문에 구분할 방법을 같이 요청해야 한다.
    • ex. 호스트명과 도메인을 완전히 포함한 URI / Host 헤더 필드 지정

5.2 통신을 중계하는 프로그램 : 프록시, 게이트웨이, 터널

  • HTTP는 통신을 중계하는 프로그램과 서버를 연계할 수 있다.
  • 이런 프로그램들은 요청에 대해서 응답을 반환한다.
    1. 프록시
      • 중간 다리 역할을 수행한다. 요청은 서버로 넘기고, 응답은 클라이언트에게 보낸다.
      • 받은 요청의 URI를 변경하지 않는다.
      • 요청과 응답이 전달될 때마다 Via 헤더에 정보가 추가된다.
      • 캐시를 통해서 대역을 관리하거나 정책 처리(액세스 제한, 로깅)를 위해서 사용한다.
      • 2개의 기준으로 프록시 서버를 구분한다.
        • 캐싱 프록시 : 캐시를 사용하는 프록시. 똑같은 요청이 오면 캐싱해둔 데이터를 리턴한다.
        • 투명 프록시 : 메시지를 변경하지 않는 프록시. 반대는 비투과 프록시라고 부른다.
    2. 게이트웨이
      • 다른 서버로 중계한다. 진짜 서버처럼 요청을 받는다.
      • 클라이언트와 서버 사이를 분리하는 역할로 사용한다. (보안성)
      • 게이트웨이에서 직접적인 데이터를 받아올 수도 있다.
    3. 터널
      • 클라이언트와 서버 사이를 중계하며 접속을 주선한다.
      • 안전하게 통신을 하기 위해 사용한다.
      • 게이트웨이와 다르게 순수하게 중계만 한다.

5.3 리소스를 보관하는 캐시

  • 일반적인 캐시의 개념과 동일하다.
  • 캐시 서버는 결국 캐시 프록시를 의미한다.
  • 항상 캐시가 최신의 데이터가 아니기 때문에 유효 기간을 설정해두기도 한다.
  • 프록시 외에도 클라이언트(브라우저)에서도 캐시를 가질 수 있다.

😋 지극히 개인적인 블로그지만 훈수와 조언은 제 성장에 도움이 됩니다 😋 

댓글