$http = new \GuzzleHttp\Client([
    'proxy' => 'http://proxy.example:8080',
]);

$builder->setHttpClient($http);
$elasticsearch = $builder->build();

$builder är den befintliga Elastic\Elasticsearch\ClientBuilder med de avsedda klustervärdarna och autentiseringen. Dessa värdar förblir destinationerna; den injicerade HTTP-klienten väljer deras mellanhand och använder en HTTP-kandidat från HTTP-proxylistan när en offentlig väg till klustret är tillåten.

Med den dokumenterade standard-Guzzle-transporten accepterar setHttpClientOptions också ett proxyalternativ. En annan levererad PSR-18-implementering behöver sin egen konfiguration; Guzzles alternativnamn är inte ett gränssnitt som alla implementeringar delar.

setConnectionParams med kapslade cURL-alternativ tillhör en äldre transportgeneration. Använd indata som den faktiskt konstruerade klassen exponerar.

Återanvänd den konfigurerade klienten för dess arbetsbelastning. Håll proxyuppgifterna hos mellanhanden och API-nyckeln hos Elasticsearch, och bevara en 407 separat från ett auktoriseringssvar från klustret.

Relaterade artiklar