Mag-inject ng PSR-18 client na may kamalayan sa proxy sa Elasticsearch PHP
Ipasa ang naka-configure na Guzzle sa umiiral na ClientBuilder ng application, na iniiwan ang mga host ng cluster at authentication sa builder na iyon.
$http = new \GuzzleHttp\Client([
'proxy' => 'http://proxy.example:8080',
]);
$builder->setHttpClient($http);
$elasticsearch = $builder->build();$builder ang umiiral na Elastic\Elasticsearch\ClientBuilder kasama ang nilalayong mga host ng cluster at authentication. Ang mga host na iyon ang nananatiling destinasyon; pinipili ng na-inject na HTTP client ang kanilang tagapamagitan, gamit ang isang kandidatong HTTP mula sa listahan ng HTTP proxy kapag pinapayagan ang pampublikong ruta patungo sa cluster.
Sa dokumentadong default na transport ng Guzzle, tinatanggap din ng setHttpClientOptions ang isang opsyon sa proxy. Ang ibang ibinigay na implementasyon ng PSR-18 ay nangangailangan ng sarili nitong configuration; ang mga pangalan ng opsyon ng Guzzle ay hindi isang interface na ibinabahagi ng bawat implementasyon.
Ang setConnectionParams na may mga nested na opsyon ng cURL ay kabilang sa mas lumang henerasyon ng transport. Gamitin ang input na inilalantad ng class na aktwal na ginawa.
Gamitin muli ang naka-configure na client para sa workload nito. Panatilihin ang mga kredensyal ng proxy sa tagapamagitan at ang API key sa Elasticsearch, at panatilihing hiwalay ang isang 407 mula sa tugon ng awtorisasyon ng cluster.