Găsiți ultima operație încheiată în ieșirea detaliată curl. „Conectat la proxy, dar fără răspuns CONNECT” restrânge problema mult mai bine decât „a expirat timpul proxy-ului”.

Folosiți o cerere cu limite de timp, înlocuind exemplul local cu proxy-ul vostru HTTP; lista de proxy-uri HTTP oferă alte puncte finale pentru comparație:

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

--connect-timeout 5 acordă stabilirii conexiunii un singur buget comun, inclusiv căutările și negocierile inițiale aplicabile; nu acordă câte cinci secunde fiecărei etape. --max-time 15 limitează întreaga operație, inclusiv transferul după stabilire.

Unde se oprește progresulCe verificați apoi
Nicio conexiune la proxyRezolvarea numelui proxy-ului, portul de ascultare, rutarea și regulile firewallului.
Proxy conectat; fără răspuns pentru tunelÎncărcarea proxy-ului, negocierea autentificării, politica de acces și accesibilitatea destinației din proxy.
Tunel acceptat; TLS incompletAccesibilitatea destinației, negocierea TLS și interceptarea administrată.
Sosesc antetele destinației; corpul se blocheazăComportamentul de transfer al serverului de origine, memorarea intermediară și eventuala tăcere intenționată a aplicației.

Pentru ordinea negocierilor inițiale, vedeți cum transportă CONNECT traficul HTTPS. O oprire aproape de bugetul conexiunii sugerează stabilirea; una ulterioară la limita totală sugerează un transfer incomplet. Corelați secvența cu timpul: timpul singur nu identifică acea componentă. Formulările jurnalelor diferă între compilările curl, iar un port TCP deschis nu dovedește că funcționează CONNECT.

Păstrați o parte neschimbată

Comparați aceeași destinație printr-o rută directă permisă:

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

Apoi comparați altă destinație inofensivă prin același proxy. Dacă eșuează doar una, investigați ruta sau politica acelei destinații. Dacă toate se opresc la același pas de stabilire, investigați calea comună prin proxy. Salvați ora de început, punctul final, destinația și ultima etapă încheiată; eliminați acreditările, tokenurile, cookie-urile și numele private înainte de a distribui jurnalele.

Când conexiunea rămâne deschisă fără progres util

Un transfer de fișiere poate avea nevoie de un prag de viteză mică pe lângă limitele de stabilire și timp total:

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

Aceasta întrerupe operația dacă viteza susținută rămâne sub 100 de octeți pe secundă timp de 20 de secunde, păstrând limita totală de 60 de secunde. Alegeți valori potrivite sarcinii. Un flux de evenimente poate fi sănătos în perioade lungi de tăcere, așa că o regulă de descărcare îl poate opri greșit.

Mărirea tuturor limitelor amână simptomul. Reîncercările imediate și repetate pot adăuga conexiuni pe o cale supraîncărcată. Diagnosticați prin câteva comparații deliberate; orice politică ulterioară de reîncercare a aplicației are nevoie de propriul buget total și de evaluarea siguranței repetării operației.

Articole similare