Når du med vilje vel handteraren til ein Guzzle-klient, kan ein cURL-basert stabel bruke SOCKS:

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

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

socks5h ber proxyen slå opp destinasjonsnamnet. Guzzle sender endepunktet vidare til libcurl, så libcurl-bygget som er lasta inn, må støtte den protokollen. SOCKS5-proxylista gjev offentlege endepunktkandidatar for proxy-URL-en til klienten.

Viss applikasjonen alt har ein handterarstabel, undersøk den underliggjande transporten før du byter han ut og mistar middleware. Ein handterar avgrensa til PHP HTTP-straumar kan ikkje implementere SOCKS berre fordi klienten får dette valet.

Kontroller prosessen som utfører førespurnaden. CLI PHP og PHP-FPM kan laste inn ulike konfigurasjonsfiler og utvidingar; at cURL finst i den eine, bevisar ikkje at det er tilgjengeleg i den andre.

Relaterte artiklar