Kada namerno birate rukovatelja Guzzle klijenta, cURL stack može koristiti SOCKS:

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

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

socks5h traži od proxyja da razreši naziv odredišta. Guzzle prosleđuje krajnju tačku libcurlu, pa učitana verzija libcurl mora podržavati taj protokol. Lista SOCKS5 proxyja nudi javne kandidate krajnjih tačaka za proxy URL klijenta.

Ako aplikacija već ima stack rukovatelja, pregledajte njegov transport pre nego što ga zamenite i izgubite middleware. Rukovatelj ograničen na PHP HTTP tokove ne može implementirati SOCKS samo zato što klijent prima ovu opciju.

Proverite proces koji izvršava zahtev. CLI PHP i PHP-FPM mogu učitati različite konfiguracione datoteke i ekstenzije; prisustvo cURL-a u jednom ne dokazuje da je dostupan u drugom.

Povezani članci