„Pridobi proxy“ lahko v aplikaciji PHP cURL pomeni tri različne stvari. Odločite se, katero opazovanje potrebujete, preden dodate drugo zahtevo.

VprašanjeKje pogledati
Katero končno točko je konfigurirala aplikacija?Konfiguracija, predana ročaju
Je bil za ta prenos uporabljen proxy?Informacije o prenosu, kjer so podprte
Kateri javni naslov je videlo spletno mesto?Opazovanje na tem cilju

Imejte izbrano končno točko ob ročaju ali objektu zahteve. curl_getinfo je vmesnik za informacije o prenosu, ne splošen getter za vsako prej dodeljeno vrednost CURLOPT. Ohranjanje konfiguracije aplikacije je preprostejše od poskusa prestrezanja klicev curl_setopt.

Preverite dokončan prenos

Po prenosu je povezani partner na voljo prek CURLINFO_PRIMARY_IP. Ko prva povezava gre na proxy, je ta partner lahko naslov proxyja in ne naslov spletnega mesta.

$peer = curl_getinfo($ch, CURLINFO_PRIMARY_IP);
$usedProxy = defined('CURLINFO_USED_PROXY')
    ? curl_getinfo($ch, constant('CURLINFO_USED_PROXY'))
    : null;

CURLINFO_USED_PROXY je bil dodan v libcurl v različici 8.7.0 in ga izpostavljajo združljive različice PHP. Njegov rezultat poroča o uporabi proxyja, ne o celotnem URL izbranega proxyja. Če konstanta ni na voljo, null zgoraj pomeni, da opazovanje ni na voljo, ne pa da je zahteva šla neposredno.

Berite te vrednosti, dokler ročaj še opisuje zadevno operacijo. Neuspešna povezava morda ne bo dala uporabnega naslova partnerja, izrecni proxy pa je še vedno mogoče obiti z veljavno izjemo.

Končna točka za preverjanje IP odgovarja na tretje vprašanje. Njen odgovor lahko opiše izhod za proxyjem, medtem ko se konfigurirano ime gostitelja razreši v drug vhod. Nobenega od naslovov v nastavitvah aplikacije ne bi smeli zamenjati z drugim.

Sorodni članki