Kai sąmoningai renkatės Guzzle kliento apdorotėją, cURL pagrindu veikiantis stekas gali naudoti SOCKS:

$stack = \GuzzleHttp\HandlerStack::create(
    new \GuzzleHttp\Handler\CurlHandler()
);

$client = new \GuzzleHttp\Client([
    'handler' => $stack,
    'proxy' => 'socks5h://proxy.example.net:1080',
]);

socks5h prašo proxy išspręsti paskirties pavadinimą. Guzzle perduoda galinį tašką libcurl, todėl įkelta libcurl versija turi palaikyti šį protokolą. SOCKS5 proxy sąrašas siūlo viešus galinio taško kandidatus kliento proxy URL.

Jei programa jau turi apdorotėjų steką, prieš jį pakeisdami ir prarasdami tarpinę programinę įrangą, ištirkite jo pagrindinį transportą. Apdorotėjas, apribotas PHP HTTP srautais, negali įgyvendinti SOCKS vien todėl, kad klientas gauna šią parinktį.

Patikrinkite procesą, kuris atlieka užklausą. CLI PHP ir PHP-FPM gali įkelti skirtingus konfigūracijos failus ir plėtinius; cURL buvimas viename neįrodo jo prieinamumo kitame.

Susiję straipsniai