Cosa aggiunge CURLOPT_PROXYPORT a una configurazione proxy cURL
Comprendere l'opzione separata della porta proxy, la sua precedenza rispetto a una porta in CURLOPT_PROXY e perché l'endpoint richiede ancora un host.
CURLOPT_PROXYPORT fornisce solo un numero di porta. Non identifica un host proxy, non sceglie un protocollo e non crea un listener sulla macchina locale.
Una nuova configurazione PHP cURL si legge più facilmente quando l'endpoint completo resta insieme:
curl_setopt($handle, CURLOPT_PROXY, 'http://proxy.example:3128');La documentazione di libcurl sconsiglia l'opzione separata della porta. Il codice esistente può comunque usarla con un host privo di porta incorporata:
curl_setopt($handle, CURLOPT_PROXY, 'http://proxy.example');
curl_setopt($handle, CURLOPT_PROXYPORT, 3128);Una porta inclusa esplicitamente nella stringa proxy ha la precedenza sull'opzione separata. Evitare di mantenere due numeri in conflitto.
Se in un frammento compare solo CURLOPT_PROXYPORT, esaminare il resto della configurazione dell'handle e l'ambiente applicabile. Il frammento da solo non rivela quale host proxy, se esiste, libcurl utilizzerà.
La porta 3128 è una scelta di distribuzione comune, non un rilevatore di protocollo. Usare il protocollo e la porta reali del listener. Per una rotta HTTP pubblica, il elenco di proxy HTTP offre candidati indirizzo e porta da tenere insieme nell'URL del proxy. Un proxy raggiungibile su un'altra porta non deve essere spostato solo per corrispondere a un esempio.