프록시 및 목적지와의 HTTP/2 협상
curl의 --proxy-http2는 HTTPS 프록시 연결을 제어합니다. 터널 안의 목적지는 자체 HTTP 버전을 협상합니다.
웹사이트는 HTTP/1.1 CONNECT 터널을 통해 HTTP/2로 응답할 수 있습니다. 사이트의 TLS 세션은 클라이언트와 프록시 사이 연결과 독립적으로 목적지 프로토콜을 협상합니다. 반대도 마찬가지로 HTTPS 프록시에 HTTP/2로 연결한다고 웹사이트에 HTTP/2를 강제하지는 않습니다.
외부 연결을 의도적으로 테스트할 수 있도록 curl 8.1.0에 --proxy-http2가 추가되었습니다.
curl --proxy https://proxy.example:8443 --proxy-http2 --connect-timeout 5 --max-time 15 --verbose https://example.com/실제 HTTPS 프록시와 HTTP/2를 지원하는 curl 빌드를 사용하세요. curl --version를 확인한 다음 자세한 협상 과정을 읽으세요. 프록시가 HTTP/1만 제공하면 curl은 그것을 사용합니다. 이 옵션은 일반 HTTP나 SOCKS 수신 엔드포인트에서 HTTP/2를 활성화하지 않습니다.
프록시 협상은 최종 전송의 HTTP 버전과 따로 기록하세요. 응답 버전이나 최종 전송의 write-out 값은 외부 프록시 연결을 자동으로 설명하지 않습니다.
공개 HTTP 프록시 목록의 엔드포인트는 지원되는 전송 방식과 완전한 요청부터 시작하세요. 실제 HTTPS 프록시가 있고 그 외부 기능을 테스트하려 할 때 이 옵션을 추가하세요. 웹사이트가 HTTP/2를 지원한다는 이유로 추가하지 마세요. 같은 HTTP/2 사이트에 도달하는 두 프록시도 경로, 부하, 연결 설정 시간이 다를 수 있으므로 사이트 버전만으로 성능을 설명할 수 없습니다.