Finn den sist fullførte operasjonen i curls detaljerte utdata. «Koblet til proxyen, men intet CONNECT-svar» avgrenser problemet langt bedre enn «proxyen fikk tidsavbrudd».

Bruk en forespørsel med tidsgrenser, og bytt ut det lokale eksemplet med HTTP-proxyen din; listen over HTTP-proxyer gir alternative endepunkter å sammenligne:

curl --noproxy '' --proxy http://127.0.0.1:8080 --connect-timeout 5 --max-time 15 --verbose https://example.com/

--connect-timeout 5 gir opprettelsen av forbindelsen ett felles tidsbudsjett, inkludert aktuelle oppslag og håndtrykk; hvert trinn får ikke fem sekunder. --max-time 15 begrenser hele operasjonen, inkludert overføringstiden etter opprettelsen.

Hvor fremdriften stopperUndersøk deretter
Ingen forbindelse til proxyenNavneoppslag for proxyen, lytteport, ruting og brannmurregler.
Proxyen er tilkoblet; intet tunnelsvarProxybelastning, autentiseringsforhandling, tilgangsregler og målets tilgjengelighet fra proxyen.
Tunnelen godkjent; TLS ufullstendigMålets tilgjengelighet, TLS-forhandling og administrert avskjæring.
Målets svarhoder kommer; innholdet stopperOverføringsatferd hos opprinnelsesserveren, mellomliggende bufring og om programmet er stille med hensikt.

Se hvordan CONNECT bærer HTTPS for rekkefølgen på håndtrykkene. En stopp nær tilkoblingsbudsjettet peker mot opprettelsen; en senere stopp ved totalgrensen peker mot en ufullstendig overføring. Bruk rekkefølgen sammen med tidene – tiden alene identifiserer ikke komponenten. Loggtekster varierer mellom curl-bygg, og en åpen TCP-port beviser ikke at CONNECT virker.

Hold én side uendret

Sammenlign samme mål over en tillatt direkte rute:

curl --noproxy '*' --connect-timeout 5 --max-time 15 --verbose https://example.com/

Sammenlign deretter et annet harmløst mål gjennom samme proxy. Hvis bare ett mål svikter, undersøk den ruten eller målets tilgangsregler. Hvis alle stopper ved samme opprettelsestrinn, undersøk den felles proxybanen. Lagre starttid, endepunkt, mål og sist fullførte trinn; fjern påloggingsopplysninger, tokener, informasjonskapsler og private navn før du deler logger.

Når forbindelsen holdes åpen uten nyttig fremdrift

En filoverføring kan trenge en grense for lav hastighet i tillegg til opprettelses- og totalgrenser:

curl --noproxy '' --proxy http://127.0.0.1:8080 --connect-timeout 5 --max-time 60 --speed-limit 100 --speed-time 20 https://example.com/

Dette avbryter når den vedvarende overføringshastigheten ligger under 100 byte per sekund i 20 sekunder, samtidig som totalgrensen på 60 sekunder beholdes. Velg verdier etter arbeidsbelastningen. En hendelsesstrøm kan fungere godt gjennom lange stille perioder, så en nedlastingsregel kan avbryte den feilaktig.

Å øke alle grensene utsetter symptomet. Umiddelbare gjentatte forsøk kan legge flere forbindelser på en overbelastet bane. Diagnostiser med noen få gjennomtenkte sammenligninger; en senere policy for nye forsøk i programmet må ha sitt eget totalbudsjett og vurdere om det er trygt å gjenta operasjonen.

Relaterte artikler