Aling proxy ang ginamit ng PHP cURL request na ito?
Ibahin ang naka-configure na proxy, ang konektadong peer at ang pampublikong labasan na nakikita ng destinasyon.
Ang “kunin ang proxy” ay maaaring mangahulugan ng tatlong magkaibang bagay sa isang PHP cURL application. Magpasya kung aling obserbasyon ang kailangan mo bago magdagdag ng panibagong request.
| Tanong | Saan titingin |
|---|---|
| Aling endpoint ang na-configure ng application? | Ang configuration na ibinigay sa handle |
| Ginamit ba ang proxy para sa transfer na ito? | Impormasyon ng transfer, kung saan sinusuportahan |
| Aling pampublikong address ang nakita ng website? | Isang obserbasyon sa destinasyong iyon |
Itabi ang napiling endpoint kasama ng handle o ng request object. Ang curl_getinfo ay isang interface ng impormasyon ng transfer, hindi isang pangkalahatang getter para sa bawat CURLOPT value na itinalaga noon. Mas simple ang itago ang configuration ng application kaysa subukang harangin ang mga tawag sa curl_setopt.
Suriin ang natapos na transfer
Pagkatapos ng transfer, ang konektadong peer ay makukuha sa pamamagitan ng CURLINFO_PRIMARY_IP. Kapag ang unang koneksyon ay papunta sa isang proxy, ang peer na iyon ay maaaring address ng proxy sa halip na address ng website.
$peer = curl_getinfo($ch, CURLINFO_PRIMARY_IP);
$usedProxy = defined('CURLINFO_USED_PROXY')
? curl_getinfo($ch, constant('CURLINFO_USED_PROXY'))
: null;
Ang CURLINFO_USED_PROXY ay idinagdag sa libcurl noong 8.7.0 at inilalantad ng mga tugmang PHP na compatible. Ang resulta nito ay nag-uulat ng paggamit ng proxy, hindi ang buong URL ng napiling proxy. Kung hindi available ang constant, ang null sa itaas ay nangangahulugang hindi available ang obserbasyon, hindi na dumiretso ang request.
Basahin ang mga halagang ito habang inilalarawan pa ng handle ang operasyong pinag-uusapan. Ang nabigong koneksyon ay maaaring hindi magbigay ng kapaki-pakinabang na address ng peer, at ang tahasang proxy ay maaari pa ring laktawan ng naaangkop na pagbubukod.
Sinasagot ng endpoint ng pagsusuri ng IP ang ikatlong tanong. Maaaring ilarawan ng sagot nito ang isang labasan sa likod ng proxy, habang ang naka-configure na hostname ay nireresolba sa ibang pasukan. Wala sa dalawang address ang dapat ipalit sa isa sa mga setting ng application.