curl-proxytydverstreke: vind die stap wat misluk
Onderskei proxyverbinding, tonnelonderhandeling, TLS en ’n vasgesteekte antwoord sodat curl se tydperke die fout help opspoor.
Vind die laaste voltooide bewerking in curl se breedvoerige uitvoer. “Aan die proxy gekoppel, maar geen CONNECT-antwoord nie” baken die probleem veel beter af as “proxytyd verstreke”.
Gebruik ’n versoek met tydperke en vervang die plaaslike voorbeeld met jou HTTP-instaanbediener; die HTTP-instaanbedienerlys bied alternatiewe eindpunte vir vergelyking:
curl --noproxy '' --proxy http://127.0.0.1:8080 --connect-timeout 5 --max-time 15 --verbose https://example.com/--connect-timeout 5 gee die opstel van die verbinding een gedeelde tydsbegroting, insluitend toepaslike opsoeke en handdrukke; dit gee nie vyf sekondes aan elke fase nie. --max-time 15 beperk die hele bewerking, insluitend oordragtyd ná opstelling.
| Waar vordering ophou | Wat om volgende te ondersoek |
|---|---|
| Geen verbinding met die proxy nie | Proxygasheernaamresolusie, luisterpoort, roetering en brandmuurbeleid. |
| Proxy gekoppel; geen tonnelantwoord nie | Proxylading, stawingsonderhandeling, toegangsbeleid en die bestemming se bereikbaarheid vanaf die proxy. |
| Tonnel aanvaar; TLS onvoltooid | Bestemmingsbereikbaarheid, TLS-onderhandeling en bestuurde onderskepping. |
| Bestemmingsopskrifte kom aan; liggaam steek vas | Oorsprongbediener se oordraggedrag, buffering by tussengangers en of die toepassing opsetlik stil is. |
Sien hoe CONNECT HTTPS dra vir die handdrukvolgorde. ’n Stop naby die verbindingsbegroting dui op opstelling; ’n latere stop by die totale limiet dui op ’n onvoltooide oordrag. Gebruik die volgorde saam met tydsmeting – tyd alleen identifiseer nie die komponent nie. Logbewoording verskil tussen curl-bouweergawes, en ’n oop TCP-poort bewys nie dat CONNECT werk nie.
Hou een kant onveranderd
Vergelyk dieselfde bestemming oor ’n toegelate direkte roete:
curl --noproxy '*' --connect-timeout 5 --max-time 15 --verbose https://example.com/Vergelyk daarna ’n ander onskadelike bestemming deur dieselfde proxy. As net een misluk, ondersoek daardie roete of bestemmingsbeleid. As almal by dieselfde opstelstap stop, ondersoek die gemeenskaplike proxypad. Bewaar begintyd, eindpunt, bestemming en laaste voltooide fase; verwyder aanmeldbesonderhede, tekens, koekies en private name voordat logboeke gedeel word.
Wanneer ’n verbinding oop bly sonder nuttige vordering
’n Lêeroordrag kan ’n laespoedgrens benewens opstel- en totale tydperke nodig hê:
curl --noproxy '' --proxy http://127.0.0.1:8080 --connect-timeout 5 --max-time 60 --speed-limit 100 --speed-time 20 https://example.com/Dit staak wanneer die volgehoue oordragtempo vir 20 sekondes onder 100 grepe per sekonde bly, terwyl die totale perk 60 sekondes bly. Kies waardes volgens die werklading. ’n Gebeurtenisstroom kan tydens lang stiltes gesond wees, dus kan ’n aflaaireël dit verkeerdelik staak.
Die verhoging van elke limiet stel die simptoom uit. Onmiddellike herhaalde pogings kan verbindings by ’n oorlaaide pad voeg. Diagnoseer met ’n paar doelbewuste vergelykings; enige latere herprobeerbeleid van die toepassing benodig sy eie totale begroting en ’n beoordeling of herhaling veilig is.