Mitä välityspalvelinta tämä PHP cURL -pyyntö käytti?
Erottele määritetty välityspalvelin, yhdistetty vastapuoli ja julkinen lähtö, jonka kohde näkee.
“Hae välityspalvelin” voi tarkoittaa PHP cURL -sovelluksessa kolmea eri asiaa. Päätä, mitä havaintoa tarvitset, ennen kuin lisäät uuden pyynnön.
| Kysymys | Mistä katsoa |
|---|---|
| Minkä päätepisteen sovellus määritti? | Kahvaan annettu määritys |
| Käytettiinkö tässä siirrossa välityspalvelinta? | Siirron tiedot, kun tuettu |
| Minkä julkisen osoitteen sivusto näki? | Havainto kyseisessä kohteessa |
Pidä valittu päätepiste kahvan tai pyyntöolion rinnalla. curl_getinfo on siirtotietojen rajapinta, ei yleinen getter jokaiselle aiemmin asetetulle CURLOPT-arvolle. Sovelluksen määrityksen säilyttäminen on yksinkertaisempaa kuin curl_setopt-kutsujen sieppaaminen.
Tarkastele valmistunutta siirtoa
Siirron jälkeen yhdistetty vastapuoli on saatavilla CURLINFO_PRIMARY_IP:n kautta. Kun ensimmäinen yhteys menee välityspalvelimelle, vastapuoli voi olla välityspalvelimen osoite eikä sivuston osoite.
$peer = curl_getinfo($ch, CURLINFO_PRIMARY_IP);
$usedProxy = defined('CURLINFO_USED_PROXY')
? curl_getinfo($ch, constant('CURLINFO_USED_PROXY'))
: null;
CURLINFO_USED_PROXY lisättiin libcurliin versiossa 8.7.0, ja yhteensopivat PHP-koonnokset tarjoavat sen. Sen tulos kertoo välityspalvelimen käytöstä, ei valitun välityspalvelimen täydellistä URL-osoitetta. Jos vakio ei ole käytettävissä, yllä oleva null tarkoittaa, että havainto ei ole käytettävissä, ei että pyyntö meni suoraan.
Lue nämä arvot, kun kahva vielä kuvaa kyseistä toimintoa. Epäonnistunut yhteys ei välttämättä anna käyttökelpoista vastapuolen osoitetta, ja eksplisiittinen välityspalvelin voidaan silti ohittaa soveltuvalla poikkeuksella.
IP-tarkistuksen päätepiste vastaa kolmanteen kysymykseen. Sen vastaus voi kuvata välityspalvelimen takana olevan lähdön, kun taas määritetty isäntänimi ratkeaa toiseen sisäänkäyntiin. Kumpaakaan osoitetta ei pidä korvata toisella sovelluksen asetuksissa.