Negocierea HTTP/2 cu un proxy și destinația sa
Opțiunea --proxy-http2 din curl controlează conexiunea proxy HTTPS. Destinația din tunel negociază propria versiune HTTP.
Site-ul poate răspunde cu HTTP/2 printr-un tunel CONNECT HTTP/1.1. Sesiunea sa TLS negociază protocolul destinației independent de conexiunea client–proxy. Este valabil și invers: HTTP/2 către un proxy HTTPS nu impune HTTP/2 la site.
Pentru a testa deliberat conexiunea exterioară, curl 8.1.0 a adăugat --proxy-http2:
curl --proxy https://proxy.example:8443 --proxy-http2 --connect-timeout 5 --max-time 15 --verbose https://example.com/Folosește un proxy HTTPS real și o compilare curl cu suport HTTP/2. Verifică curl --version, apoi citește negocierea detaliată: proxy-ul poate oferi doar HTTP/1, pe care curl îl va folosi. Opțiunea nu activează HTTP/2 pe un punct de ascultare HTTP simplu sau SOCKS.
Înregistrează negocierea proxy separat de versiunea HTTP a transferului final. O versiune de răspuns sau o valoare write-out a transferului final nu descrie automat conexiunea proxy exterioară.
Pentru un punct din lista publică de proxy-uri HTTP, începe cu transportul acceptat și o cerere completă. Adaugă opțiunea când chiar ai un proxy HTTPS și vrei să testezi acea capacitate exterioară, nu fiindcă site-ul acceptă HTTP/2. Chiar două proxy-uri spre același site HTTP/2 pot diferi prin rutare, încărcare și timp de conectare; versiunea site-ului singură nu explică performanța.