【发布时间】:2017-02-03 14:34:54
【问题描述】:
我安装了 elasticsearch with the help of this link 。
require 'vendor/autoload.php';
use Elasticsearch\ClientBuilder;
$client = ClientBuilder::create()->setHosts(["localhost:9200"])->build();
$response = '';
try{
$params = [
'index' => 'my_index',
'type' => 'my_type',
'id' => 'my_id',
'body' => ['testField' => 'abc']
];
$response = $client->indices()->create($params);
}catch(Exception $e){
echo "Exception : ".$e->getMessage();
}
print_r($response);
die('End : Elastic Search');
它返回我在您的集群中找不到活动节点。 当我将端口更改为 80
$client = ClientBuilder::create()->setHosts(["localhost:80"])->build();
它给了我以下错误。
方法不允许。 URL /my_index 不允许请求的方法 PUT。
【问题讨论】:
-
你能在弹性服务器上发布你的 elasticsearch.yml 文件吗?
-
你为什么要在 80 和 9200 之间改组弹性端口,默认情况下,只有当你明确将其更改为 80 时,弹性服务器才会监听 9200 端口。我可以看看你的 elasticsearch.yml 文件查看您是否启用了对端口 9200 或其他内容的远程访问
-
@user3775217 我可以在 /etc/elasticsearch 目录中找到 elasticsearch.yml 文件。该文件中的所有内容都已注释。
-
嗯,这意味着您的弹性服务器正在侦听默认端口 9200
-
你是如何安装elasticsearch的?您在帖子中分享的关于 elasticsearch 的链接是安装 elasticsearch php 客户端而不是 elasticsearch 服务器。
标签: elasticsearch php-7 elasticsearch-plugin