我很难用 elasticsearch-php 连接到 searchly.com (http://www.elasticsearch.org/guide/en/elasticsearch/client/php-api/current/)
$params = array();
$params['hosts'] = array (
'https://site:{my-key}@balin-eu-west-1.searchly.com:80'
);
$client = new Client($params);
$em = $this->getContainer()->get('doctrine')->getManager();
$movies = $em->getRepository("CineupsWebAppBundle:Movie")
->getTitlesWithSlug();
$params = array('index' => 'movies');
foreach($movies as $movie)
{
$params['body'][] = array(
'title' => $movie['title'],
'titleDe' => $movie['titleDe'],
'slugDe' => $movie['slugDe']
);break;
}
$responses = $client->bulk($params);
使用端口 80 我得到:
[Elasticsearch'Common'Exceptions'TransportException]
error:140770FC:SSL routines:SSL23_GET_SERVER_HELLO:unknown protocol
没有:
[Elasticsearch'Common'Exceptions'Curl'CouldNotConnectToHost]
Failed to connect to balin-eu-west-1.searchly.com port 9200: Connection timed out
尝试与 curl 连接(放置新索引)
curl -XPUT http://site:{my-key}@balin-eu-west-1.searchly.com/articles
它有效
似乎我错过了一些连接设置,但不知道:(
尝试如下:
$params['hosts'] = array (
'http://balin-eu-west-1.searchly.com:80'
);
$params['connectionParams']['auth'] = array(
'site',
'key',
'Basic'
);
$client = new Elasticsearch'Client($params);
另请参阅 https://github.com/searchly/searchly-php-sample