Návštěvník klikne na tlačítko. Váš PHP server volá externí API. API vidí odchozí připojení serveru, nebo výstup proxy nakonfigurované pro toto připojení. Prohlížeč návštěvníka obsluhuje samostatné připojení k vašemu webu.

Zkopírování adresy návštěvníka do hlavičky nemůže přesunout PHP připojení do sítě návštěvníka. Hlavičky jsou data odesílaná přes již navázané připojení. Cíl může ve své vlastní logice použít důvěryhodnou hlavičku pro přesměrování, ale tím se hodnota hlavičky nestane zdrojovou adresou připojení.

Proxy musí připojení přijmout

Chcete-li poslat PHP cURL přes jiný stroj, musí tento stroj nabízet dostupnou proxy službu s oprávněním přenášet požadavek. PHP proces se k ní musí umět připojit. Běžná relace prohlížeče návštěvníka vašemu serveru takový univerzální proxy endpoint neposkytuje.

Volba proxy v libcurl vybírá službu, ke které se cURL připojuje. Nemůže požádat libovolný prohlížeč, aby požadavek vytvořil jeho jménem.

Požadavek z prohlížeče je jiný návrh

U některých API může prohlížeč volat cíl přímo. Tím se požadavek umístí na síťovou cestu uživatele, podléhající jeho vlastní konfiguraci proxy. Vyžaduje to také API navržené pro klientské prohlížeče. Přístup mezi zdroji se řídí CORS a přihlašovací údaje odeslané do kódu prohlížeče se stanou tomuto klientu dostupné.

Rozhodněte, kam požadavek patří, dříve než zvolíte možnost proxy. Serverové přihlašovací údaje ponechte na serveru; pokud to služba podporuje, použijte dokumentovanou integraci prohlížeče. Ani jeden návrh nenabízí spolehlivou zkratku, jak nechat serverový požadavek zdědit síťovou identitu návštěvníka.

Související články