Indsæt en proxybevidst PSR-18-klient i Elasticsearch PHP
Send en konfigureret Guzzle til applikationens eksisterende ClientBuilder og lad klynge-værter og godkendelse blive på den builder.
$http = new \GuzzleHttp\Client([
'proxy' => 'http://proxy.example:8080',
]);
$builder->setHttpClient($http);
$elasticsearch = $builder->build();$builder er den eksisterende Elastic\Elasticsearch\ClientBuilder med de tilsigtede klynge-værter og godkendelse. Disse værter forbliver destinationerne; den indsatte HTTP-klient vælger deres mellemled og bruger en HTTP-kandidat fra HTTP-proxylisten, når en offentlig rute til klyngen er tilladt.
Med den dokumenterede standard-Guzzle-transport accepterer setHttpClientOptions også en proxyindstilling. En anden leveret PSR-18-implementering kræver sin egen konfiguration; Guzzle-indstillingsnavne er ikke et interface, som hver implementering deler.
setConnectionParams med indlejrede cURL-indstillinger hører til en ældre transportgeneration. Brug det input, som den faktisk konstruerede klasse eksponerer.
Genbrug den konfigurerede klient til dens arbejdsbyrde. Hold proxy-legitimationsoplysninger hos mellemleddet og API-nøglen hos Elasticsearch, og bevar en 407 adskilt fra en godkendelsesrespons fra klyngen.