Vad CURLOPT_PROXYPORT tillför en cURL-proxyinställning
Förstå det separata proxyportalternativet, dess företräde framför en port i CURLOPT_PROXY och varför slutpunkten fortfarande behöver en värd.
CURLOPT_PROXYPORT anger ett portnummer. Det identifierar inte en proxyvärd, väljer ingen protokoll och skapar ingen lyssnare på den lokala maskinen.
En ny PHP cURL-konfiguration är lättare att läsa när hela slutpunkten hålls samman:
curl_setopt($handle, CURLOPT_PROXY, 'http://proxy.example:3128');
libcurl-dokumentationen avråder från det separata portalternativet. Befintlig kod kan fortfarande använda det med en värd som saknar inbäddad port:
curl_setopt($handle, CURLOPT_PROXY, 'http://proxy.example');
curl_setopt($handle, CURLOPT_PROXYPORT, 3128);
En port som uttryckligen ingår i proxysträngen har företräde framför det separata alternativet. Undvik att underhålla två motstridiga nummer.
Om bara CURLOPT_PROXYPORT visas i ett fragment, granska resten av handtagets konfiguration och den tillämpliga miljön. Fragmentet ensamt avslöjar inte vilken proxyvärd, om någon, libcurl kommer att använda.
Port 3128 är ett bekant driftsättningsval, inte en protokolldetektor. Använd lyssnarens verkliga protokoll och port. För en offentlig HTTP-väg ger HTTP-proxylistan adress- och portkandidater att hålla samman i proxy-URL:en. En proxy som nås på en annan port behöver inte flyttas bara för att matcha ett exempel.