Vrata proxyja in ciljna vrata v cURL
Ohranite vrata storitve HTTPS v njenem ciljnem URL-ju in vrata posrednika v URL-ju proxyja, ne da bi jih prepisali s CURLOPT_PORT.
Storitev HTTPS na vratih 8443 je dosegljiva prek proxyja HTTP na vratih 8080. Te številke opisujejo različne povezave:
$handle = curl_init('https://api.example:8443/status');
curl_setopt($handle, CURLOPT_PROXY, 'http://proxy.example:8080');
curl_setopt($handle, CURLOPT_RETURNTRANSFER, true);
Aplikacija še vedno upravlja z izvajanjem, obravnavo napak in življenjskim ciklom ročaja. Odlomek drži vnose usmerjanja skupaj, ne da bi spremenil preverjanje potrdila.
cURL se najprej poveže z proxy.example:8080. Za ta cilj HTTPS zahteva za tunel navede api.example:8443, identiteta TLS pa ostane api.example.
CURLOPT_PORT je prepis ciljnih vrat, ne vrat proxyja. Če ga nastavite na 443 vsakič, ko se URL začne s https, lahko prepišete storitev, ki je namerno gostovana na 8443. libcurl priporoča izbiro vrat v URL-ju namesto uporabe te možnosti.
Pri ponovni uporabi ročaja upoštevajte tudi prejšnji izrecni prepis vrat. Nov URL ne olajša razlage nasprotujočih si ohranjenih možnosti.
Posrednik mora dovoliti CONNECT na izbrana ciljna vrata. Zavrnitev za 8443 ni razlog za premikanje poslušalca proxyja ali izklop preverjanja TLS.