CURLOPT_CONNECT_TO ändert Host und Port, zu denen libcurl für ein passendes Ziel eine Verbindung aufbaut. Es bringt den alternativen Endpunkt nicht dazu, HTTP CONNECT oder SOCKS zu sprechen.

Der ursprüngliche Hostname liefert weiterhin die Identität des Anwendungsprotokolls und von TLS. Das ist nützlich, wenn gezielt eine andere Serverinstanz desselben Dienstes erreicht werden soll. Ein beliebiger Proxy-Listener erwartet dagegen seinen Proxy-Handshake, nicht die rohen Bytes der Anwendung.

Die Zuordnung mit einem HTTP-Proxy kombinieren

Konfigurieren Sie den HTTP-Proxy getrennt. Eine zugangsdatenfreie HTTP-Route zu einem öffentlichen Dienst kann einen Endpunkt aus der HTTP-Proxy-Liste verwenden, wenn dieser Vermittler zulässig ist; ein bestehendes Proxy-Konto sollte nicht an den Kandidaten gesendet werden. libcurl dokumentiert, dass eine abweichende connect-to-Zuordnung die Anfrage dann in den Tunnelmodus schalten kann: Der Proxy öffnet die Verbindung zum zugeordneten Ziel. Die Zuordnung wählt aus, was über den Proxy erreicht wird; sie hat die Proxy-Konfiguration nicht ersetzt.

Halten Sie drei Werte getrennt: den beabsichtigten Dienstnamen, den alternativen Verbindungsendpunkt und den Proxy-Endpunkt. Wählen Sie jede Option nach ihrer tatsächlichen Rolle und behalten Sie die normale TLS-Namensprüfung für den Dienst bei.

Wenn der Proxy-Port selbst Verbindungen ablehnt, kann eine andere Option, die auf denselben fehlenden Listener zeigt, den ersten Schritt nicht reparieren. Beheben Sie diesen Listener- oder Pfadfehler, bevor Sie die Zielzuordnung ändern.

Ähnliche Artikel