본문 바로가기
네트워크

HTTP와 연계하는 웹 서버

by heereal 2023. 9. 4.

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

  • 가상 호스트(Virtual Host) 기능을 사용하면 하나의 HTTP 서버에서 여러 개의 웹 사이트를 실행할 수 있음
  • 즉 같은 IP 주소의 다른 호스트명과 도메인명을 가진 여러 개의 웹 사이트가 실행될 수 있음
  • 따라서 HTTP 리퀘스트를 보낼 때는 호스트명과 도메인명을 완전하게 포함한 URI를 지정하거나, Host 헤더 필드에서 지정해야 함

 

통신을 중계하는 프로그램

  • 프록시
    • 서버와 클라이언트의 양쪽 역할을 하는 중계 프로그램
    • 클라이언트로부터 받은 리퀘스트를 서버에 전송하고, 오리진 서버로부터 받은 리스폰스를 클라이언트에 전송함
      • 리소스 본체를 가진 서버를 오리진 서버(Origin Server)라고 함
    • 중계할 때마다 Via 헤더 필드에 경유한 호스트 정보를 추가함 (ex. Via: proxy2, proxy1)
    • 프록시 서버를 사용하여 네트워크 대역 등을 효율적으로 사용하거나, 특정 URI 등으로 엑세스를 제한하는 것도 가능함
  • 게이트웨이
    • 다른 서버(HTTP 이외의 서버)를 중계하는 서버
    • 클라이언트로부터 수신한 리퀘스트를 리소스를 보유한 서버인 것처럼 수신함
    • HTTP 프로토콜 이외의 통신을 실행할 수 있음
    • 클라이언트와 게이트웨이 사이를 암호화하여 통신의 안정성을 높이는 역할을 하기도 함
  • 터널
    • 다른 서버와의 안전한 통신 경로를 확립함
    • SSL 같은 암호화 통신을 통해 서버와 안전하게 통신할 수 있음
    • 터널 자체는 HTTP 리퀘스트를 해석하지 않고, 리퀘스트를 그대로 다음 서버에 중계함

 

리소스를 보관하는 캐시

  • 캐시: 프록시 서버나 로컬 디스크에 보관된 리소스의 사본
  • 서버에의 엑세스를 줄여서 통신량 및 통신 시간 절약 가능
  • 캐시 서버: 프록시 서버의 하나로 캐싱 프록시(Cashing Proxy)로 분류됨
    • 클라이언트 ↔ 캐시 서버 ↔ 오리진 서버
    • 프록시가 서버로부터의 리스폰스를 중계할 때 프록시 서버(캐시 서버) 상에 리소소의 사본을 보존
  • 인터넷 임시 파일: 클라이언트가 보존하는 캐시
    • 브라우저가 유효한 캐시를 가지고 있는 경우, 서버에 액세스하지 않고 로컬 디스크에서 리소스를 불러옴
  • 캐시의 유효기간
    • 캐시를 가지고 있더라도 클라이언트의 요구나 캐시의 유효 기간에 의해서 오리진 서버에 리소스의 유효성을 확인하거나 새로운 리소스를 다시 획득하러 가는 경우도 있음

 


이 글은 《그림으로 배우는 Http & Network Basic》를 참고하여 작성하였습니다.

'네트워크' 카테고리의 다른 글

HTTP 상태 코드  (0) 2023.07.28
HTTP 통신  (0) 2023.07.21
HTTP 프로토콜의 구조  (0) 2023.07.13
웹과 네트워크의 기본  (0) 2023.07.13

댓글