使用 Elasticsearch-PHP 2.0时出现
["{\"error\":\"Content-Type header [] is not supported\",\"status\":406}"] []
几经查找无果,然后开始翻找源码,最后找到原因,在vendor\elasticsearch\elasticsearch\src\Elasticsearch\Connections\Connection.php 这个文件
里设置一下header即可
if (isset($hostDetails['user']) && isset($hostDetails['pass'])) {
$connectionParams['client']['curl'][CURLOPT_HTTPAUTH] = CURLAUTH_BASIC;
$connectionParams['client']['curl'][CURLOPT_USERPWD] = $hostDetails['user'].':'.$hostDetails['pass'];
}
//set header
$connectionParams['client']['curl'][CURLOPT_HTTPHEADER] = ['Accept: application/json', 'Content-Type: application/json'];
$host = $hostDetails['host'].':'.$hostDetails['port'];