Kun valitset Guzzle-asiakkaan käsittelijän tietoisesti, cURL-pohjainen pino voi käyttää SOCKSia:

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

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

socks5h pyytää välityspalvelinta selvittämään kohdenimen. Guzzle välittää päätepisteen libcurlille, joten ladatun libcurlin on tuettava tätä protokollaa. SOCKS5-välityspalvelinluettelo tarjoaa julkisia päätepisteehdokkaita asiakkaan välityspalvelimen URL-osoitteelle.

Jos sovelluksella on jo käsittelijäpino, tarkasta sen taustalla oleva siirtotapa ennen kuin korvaat sen ja menetät väliohjelmiston. PHP:n HTTP-virtoihin rajoittunut käsittelijä ei voi toteuttaa SOCKSia vain siksi, että asiakas saa tämän valinnan.

Tarkasta pyynnön tekevä prosessi. CLI PHP ja PHP-FPM voivat ladata eri asetustiedostoja ja laajennuksia; cURLin esiintyminen toisessa ei todista sen saatavuutta toisessa.

Aiheeseen liittyvät artikkelit