기술나눔

HTTP1.0과 HTTP1.1의 차이점

2024-07-12

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

지속적인 연결

HTTP/1.1영구 연결은 기본적으로 지원되므로 여러 HTTP 요청 및 응답이 TCP 연결에서 전송될 수 있으므로 연결 설정 및 종료에 따른 오버헤드가 줄어듭니다.

그리고HTTP/1.0기본값은 짧은 연결입니다. 각 요청은 TCP 연결을 설정해야 합니다.Connection: keep-alive지속적인 연결을 구현하기 위한 헤더입니다.Connection: keep-alive 의 목적은 응답을 보낸 후 즉시 닫히는 대신 재사용이 가능하도록 서버와 클라이언트 사이의 TCP 연결을 유지해야 함을 알려주는 것입니다. 이 기능은 HTTP/1.0에서 도입되었으며 HTTP/1.1에서 기본 동작이 되었습니다.

관로

HTTP/1.1파이프라인(기본적으로 활성화되지 않음)을 지원하여 첫 번째 요청에 대한 응답이 도착하기 전에 클라이언트가 여러 요청을 보낼 수 있도록 하여 대기 시간을 줄이고 효율성을 향상시킬 수 있습니다.

HTTP/1.0은 파이프라인을 지원하지 않습니다.

캐시 제어

HTTP1.0주로 사용됨If-Modified-Since/Expires판단을 캐시하는 기준으로

HTTP1.1다음과 같은 더 많은 캐시 제어 전략이 도입되었습니다.Etag / If-None-Match캐싱 전략을 제어하기 위해 더 많은 선택적 캐시 헤더를 기다립니다.

오류 처리:

HTTP/1.1다음과 같은 몇 가지 새로운 HTTP 상태 코드가 추가되었습니다.100 Continue, 오류 처리 및 요청에 대한 중간 응답을 향상하는 데 사용됩니다.

100 Continue 응답을 받은 후 클라이언트는 계속해서 요청 본문을 보내야 합니다.서버가 다음을 포함하는 메시지를 수신한 경우Expect: 100-continue요청 처리를 계속하지 않기로 결정한 후(예를 들어 요청 헤더 정보에 요청을 수락할 수 없음이 표시되는 경우) 서버는 100 Continue 대신 오류 상태 코드(예: 400 Bad Request)를 반환해야 합니다.

Host머리:

HTTP/1.1소개Host 클라이언트가 요청한 호스트 이름을 지정할 수 있도록 하는 헤더로, 동일한 서버에서 여러 도메인 이름을 호스팅할 수 있습니다. 각 도메인 이름은 서버의 다른 리소스나 서비스에 매핑될 수 있습니다. HTTP/1.0에는 이 헤더 필드가 없습니다.

대역폭 최적화:

HTTP1.0, 대역폭을 낭비하는 현상이 있습니다. 예를 들어 클라이언트는 개체의 일부만 필요하지만 서버는 개체 전체를 보내고 재개 기능을 지원하지 않습니다.HTTP1.1요청 헤더에 소개됩니다.range리소스의 특정 부분만 요청할 수 있는 헤더 필드, 즉 반환 코드는 다음과 같습니다.206(Partial Content)