Individua l’ultima operazione completata nell’output dettagliato di curl. «Connessione al proxy riuscita, ma nessuna risposta CONNECT» circoscrive il problema molto più di «timeout del proxy».

Usa una richiesta con limiti di tempo, sostituendo l’esempio locale con il tuo proxy HTTP; nell’elenco dei proxy HTTP puoi trovare altri endpoint da confrontare:

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

--connect-timeout 5 assegna un unico tempo massimo all’instaurazione della connessione, comprese le ricerche e le negoziazioni applicabili; non assegna cinque secondi a ogni fase. --max-time 15 limita l’intera operazione, incluso il trasferimento successivo all’instaurazione.

Dove si ferma l’avanzamentoCosa verificare dopo
Nessuna connessione al proxyRisoluzione del nome del proxy, porta in ascolto, instradamento e regole del firewall.
Proxy connesso; nessuna risposta al tunnelCarico del proxy, negoziazione dell’autenticazione, criteri di accesso e raggiungibilità della destinazione dal proxy.
Tunnel accettato; TLS incompletoRaggiungibilità della destinazione, negoziazione TLS e intercettazione gestita.
Arrivano le intestazioni della destinazione; il corpo si bloccaComportamento di trasferimento del server di origine, buffering intermedio ed eventuale silenzio intenzionale dell’applicazione.

Per l’ordine delle negoziazioni, vedi come CONNECT trasporta HTTPS. Un arresto vicino al limite di connessione suggerisce un problema di instaurazione; un arresto successivo al limite complessivo suggerisce un trasferimento incompleto. Considera insieme sequenza e tempi: il tempo da solo non identifica il componente. I messaggi cambiano tra le build di curl e una porta TCP aperta non dimostra che CONNECT funzioni.

Mantieni invariato un lato

Confronta la stessa destinazione tramite un percorso diretto consentito:

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

Poi confronta un’altra destinazione innocua attraverso lo stesso proxy. Se ne fallisce solo una, esamina quel percorso o i criteri della destinazione. Se tutte si fermano nello stesso passaggio di instaurazione, esamina il percorso comune del proxy. Salva ora di inizio, endpoint, destinazione e ultima fase completata; rimuovi credenziali, token, cookie e nomi privati prima di condividere i log.

Quando la connessione resta aperta senza progressi utili

Un trasferimento di file può richiedere una soglia di bassa velocità oltre ai limiti di connessione e durata totale:

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

Questo interrompe l’operazione se la velocità sostenuta resta sotto 100 byte al secondo per 20 secondi, mantenendo un limite complessivo di 60 secondi. Scegli valori adatti al lavoro. Un flusso di eventi può essere sano durante lunghe pause; una regola per i download potrebbe quindi interromperlo erroneamente.

Aumentare tutti i limiti rimanda il sintomo. Tentativi immediati e ripetuti possono aggiungere connessioni a un percorso sovraccarico. Diagnostica con pochi confronti mirati; ogni successiva strategia di ritentativo dell’applicazione richiede un proprio limite complessivo e una valutazione della sicurezza della ripetizione.

Articoli correlati