De website kan via een HTTP/1.1 CONNECT-tunnel met HTTP/2 antwoorden. Haar TLS-sessie onderhandelt over het bestemmingsprotocol onafhankelijk van de client-proxyverbinding. Het omgekeerde geldt ook: HTTP/2 naar een HTTPS-proxy dwingt geen HTTP/2 af bij de website.

Om de buitenste verbinding bewust te testen, voegde curl 8.1.0 --proxy-http2 toe:

curl --proxy https://proxy.example:8443 --proxy-http2 --connect-timeout 5 --max-time 15 --verbose https://example.com/

Gebruik een echte HTTPS-proxy en een curl-build met HTTP/2-ondersteuning. Controleer curl --version en lees de gedetailleerde onderhandeling: de proxy kan alleen HTTP/1 aanbieden, dat curl dan gebruikt. De optie schakelt HTTP/2 niet in op een gewone HTTP- of SOCKS-listener.

Leg proxyonderhandeling apart vast van de HTTP-versie van de uiteindelijke overdracht. Een antwoordversie of write-out-waarde van de uiteindelijke overdracht beschrijft niet automatisch de buitenste proxyverbinding.

Begin bij een endpoint uit de openbare HTTP-proxylijst met het ondersteunde transport en een volledig verzoek. Voeg deze optie toe als je echt een HTTPS-proxy hebt en die buitenste mogelijkheid wilt testen, niet omdat de website HTTP/2 ondersteunt. Zelfs twee proxy’s naar dezelfde HTTP/2-site kunnen verschillen in routering, belasting en opbouwtijd; de websiteversie alleen verklaart de prestaties niet.

Gerelateerde artikelen