Получение «ошибки 7 cURL» подключение к серверам ElasticSearch с использованием PHP-клиента ElasticSearch

Попытка соединиться с ES, размещенным с ObjectRocket, но получить следующую ошибку …

Fatal error: Uncaught exception 'Elasticsearch\Common\Exceptions\TransportException' with message 'cURL error 7: See http://curl.haxx.se/libcurl/c/libcurl-errors.html'
in /var/www/html/vendor/elasticsearch/elasticsearch/src/Elasticsearch/Connections/Connection.php:201 Stack trace:
#0 /var/www/html/vendor/react/promise/src/FulfilledPromise.php(25): Elasticsearch\Connections\Connection->Elasticsearch\Connections\{closure}(Array)
#1 /var/www/html/vendor/react/promise/src/Promise.php(114): React\Promise\FulfilledPromise->then(Object(Closure), NULL)
#2 /var/www/html/vendor/react/promise/src/Promise.php(159): React\Promise\Promise->React\Promise\{closure}(Object(React\Promise\FulfilledPromise))
#3 /var/www/html/vendor/react/promise/src/Promise.php(128): React\Promise\Promise->settle(Object(React\Promise\FulfilledPromise))
#4 /var/www/html/vendor/react/promise/src/Promise.php(177): React\Promise\Promise->resolve(Array)
#5 [internal function]: React\Promise\Promise->React\Promise\{closure}(Array)
#6 /var/www/html/vendor/react/pro in /var/www/html/vendor/elasticsearch/elasticsearch/src/Elasticsearch/Connections/Connection.php on line 201

Мой код PHP:

<?php

ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);

require 'vendor/autoload.php';

use Elasticsearch;
use Elasticsearch\ClientBuilder;

$multiHandler = ClientBuilder::multiHandler();

$hosts = [
'http://user:[email protected]:10183',
'http://user:[email protected]:10183',
'http://user:[email protected]:10183',
'http://user:[email protected]:10183'
];

$client = ClientBuilder::create()->setHosts($hosts)->setHandler($multiHandler)->build();

$params = [
'index' => 'my_index',
'type' => 'my_type',
'id' => 'my_id',
'body' => [
'testField' => 'abc'
]
];

$response = $client->index($params);
print_r($response);
?>

Но если я бегу curl команда из терминала это у меня нет проблем с подключением …

curl -XGET http://user:[email protected]:10183

0

Решение

Я думаю, что пакет php5-curl расширение отсутствует.
Если вы используете базовые системы Ubuntu или Linux,

sudo apt-get install php5-curl

Если вы используете nginx, при выполнении вышеуказанной команды автоматически перезапустится php5-fpm, однако, если вы используете apache2, перезапустите apache2 и php5-fpm

sudo service apache2 restart
sudo service php5-fpm restart
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]