CURLOPT_CONNECT_TO cambia l'host e la porta a cui libcurl si connette per una destinazione corrispondente. Non fa parlare l'endpoint alternativo in HTTP CONNECT o SOCKS.

Il nome host originale fornisce ancora l'identità del protocollo applicativo e di TLS. Questo è utile quando si raggiunge deliberatamente un'altra istanza server dello stesso servizio. Un qualsiasi listener proxy, invece, si aspetta il proprio handshake proxy, non i byte grezzi dell'applicazione.

Combinare la mappatura con un proxy HTTP

Configurare il proxy HTTP separatamente. Un percorso HTTP senza credenziali verso un servizio pubblico può usare un endpoint dall'elenco di proxy HTTP quando quell'intermediario è consentito; nessun account proxy esistente dovrebbe essere inviato al candidato. libcurl documenta che una mappatura connect-to diversa può quindi portare la richiesta in modalità tunnel: il proxy apre la connessione verso la destinazione mappata. La mappatura sceglie cosa viene raggiunto attraverso il proxy; non ha sostituito la configurazione del proxy.

Tenere distinti tre valori: il nome del servizio previsto, l'endpoint di connessione alternativo e l'endpoint del proxy. Scegliere ogni opzione per il suo ruolo effettivo e mantenere la normale verifica del nome TLS per il servizio.

Se la porta del proxy stessa rifiuta le connessioni, un'altra opzione che punta a quello stesso listener assente non può correggere il primo salto. Risolvere quel guasto del listener o del percorso prima di modificare la mappatura di destinazione.

Articoli correlati