Ar PHP cURL gali naudoti lankytojo IP?
Paaiškina, kuris įrenginys atidaro serverio cURL ryšį ir ko reikėtų proxy, kad šis maršrutas pasikeistų.
Lankytojas spusteli mygtuką. Jūsų PHP serveris iškviečia išorinį API. API mato serverio išeinantį ryšį arba tam ryšiui sukonfigūruoto proxy išėjimą. Lankytojo naršyklė palaiko atskirą ryšį su jūsų svetaine.
Lankytojo adreso įrašymas į antraštę negali perkelti PHP ryšio į lankytojo tinklą. Antraštės yra duomenys, siunčiami jau nustatytu ryšiu. Paskirties sistema gali savo programos logikoje naudoti patikimą persiuntimo antraštę, bet tai nepaverčia antraštės reikšmės ryšio šaltinio adresu.
Proxy turi priimti ryšį
Kad PHP cURL eitų per kitą įrenginį, tas įrenginys turi siūlyti pasiekiamą proxy paslaugą ir turėti leidimą perduoti užklausą. PHP procesas turi galėti prie jo prisijungti. Įprasta lankytojo naršyklės sesija nesuteikia jūsų serveriui tokio bendros paskirties proxy galinio taško.
libcurl proxy parinktis nurodo paslaugą, prie kurios jungiasi cURL. Ji negali paprašyti savavališkos naršyklės inicijuoti užklausos jo vardu.
Naršyklės užklausa – kitokia konstrukcija
Kai kuriems API naršyklė gali kreiptis į paskirties sistemą tiesiogiai. Taip užklausa patenka į naudotojo tinklo kelią, atsižvelgiant į jo paties proxy konfigūraciją. Tam taip pat reikia API, sukurto naršyklės klientams. Kryžminė prieiga laikosi CORS, o naršyklės kodui siunčiami prisijungimo duomenys tampa prieinami tam klientui.
Prieš rinkdamiesi proxy parinktį, nuspręskite, kur užklausa turi būti atliekama. Laikykite serverio prisijungimo duomenis serveryje; naudokite dokumentuotą naršyklės integraciją, kai paslauga ją palaiko. Nė viena konstrukcija nepasiūlo patikimo spartaus kelio, kad serverio užklausa paveldėtų lankytojo tinklo tapatybę.