2015-03-22 2 views
1

У меня Elasticsearch правильно настроен на моем сервере. Я могу сделать все из командной строки, используя cURL. Я даже могу подключиться к нему, используя cURL из скрипта PHP вне Yii. Тем не менее, я не могу заставить его работать с Yii 2.0.Elasticsearch с Yii 2.0: Ошибка: запрос Elasticsearch не удалось: 7 - Не удалось подключиться к ##. ##. ##. ### port 9200: Connection failed

В моей конфигурации, у меня есть:

'elasticsearch' => [ 
      'class' => 'yii\elasticsearch\Connection', 
      'nodes' => [ 
       ['http_address' => 'localhost:9200'], 
       // configure more hosts if you have a cluster 
      ], 
     ], 

Но когда я пытаюсь сделать простой запрос в Yii, я получаю эту ошибку. Обратите внимание, как он использует IP-адрес моего сервера, а не «localhost» или «172.0.0.1». Примечание. Я удалил свой ip-адрес для уверенности.

Elasticsearch Database Exception – yii\elasticsearch\Exception 
Elasticsearch request failed: 7 - Failed to connect to ##.##.##.### port 9200: Connection refused 
Error Info: Array 
(
    [requestMethod] => GET 
    [requestUrl] => http://##.##.##.###:9200/profiles/profile/_search 
    [requestBody] => {"size":100,"query":{"match_all":{}}} 
    [responseHeaders] => Array 
     (
     ) 
    [responseBody] => 
) 
+0

У меня такая же проблема, какая версия Elasticsearch работает на вашем сервере? –

ответ

0

я смог исправить эту ошибку, обновив версию Elasticsearch к чему-то> 1.3.0, так как это является минимальным требованием для YIISOFT/YII2-ELASTICSEARCH

curl -X GET 'http://127.0.0.1:9200' перспективе, чтобы проверить, какую версию вы Бег.

0

Сначала выполните следующие действия для загрузки эластичного поиска.

wget https://download.elasticsearch.org/elasticsearch/elasticsearch/elasticsearch-1.5.2.tar.gz 
mkdir es 
tar -xf elasticsearch-1.5.2.tar.gz -C es 
cd es 
./bin/elasticsearch 

Тогда вы должны быть в состоянии получить доступ к локальной машине: 9200 и получить что-то вроде этого ниже:

{ 
    "name" : "Sigyn", 
    "cluster_name" : "elasticsearch", 
    "version" : { 
    "number" : "2.4.0", 
    "build_hash" : "ce9f0c7394dee074091dd1bc4e9469251181fc55", 
    "build_timestamp" : "2016-08-29T09:14:17Z", 
    "build_snapshot" : false, 
    "lucene_version" : "5.5.2" 
    }, 
    "tagline" : "You Know, for Search" 
} 

Тогда, во-вторых, следовать инструкциям в https://github.com/yiisoft/yii2-elasticsearch. Тогда вы закончили