首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在elasticsearch-php客户端中使用https

在elasticsearch-php客户端中使用https
EN

Stack Overflow用户
提问于 2014-01-28 04:44:41
回答 2查看 2.5K关注 0票数 1

我目前正在尝试使用php elasticsearch client连接到我的弹性搜索集群

为此,我在使用https端点时遇到了问题。我的集群在负载均衡器后面,前面有一个VIP,它使用Apache身份验证,位于端口443上。我遇到的麻烦是,客户端的配置似乎正在解析主机,并从主机名中删除了https://。这会导致客户端始终尝试通过端口80进行连接。我尝试将:443添加到主机名中,但随后收到curl错误"empty reply from server“。我知道此服务器具有访问权限(无防火墙阻止),因为我可以使用https://myelasticsearch.com手动进行curl调用。

我的问题是,有没有一种方法可以指定使用此客户端发出请求的协议?如果不是,主机阵列的解析在源中的什么位置发生?

EN

回答 2

Stack Overflow用户

发布于 2014-01-28 05:28:49

我找到了一个临时解决方案,在src/Elasticsearch/Connections/AbstractConnection.php中有一个已定义的transportSchema变量,该变量被设置为http。我将其更改为https,并在配置中将:443添加到我的主机中,它可以正常工作!

票数 0
EN

Stack Overflow用户

发布于 2014-08-26 06:06:29

就像对这个问题的更新一样(以防有人遇到这个问题),这个bug在Elasticsearch-PHPV1.1.0中得到了修复。您现在可以在主机中指定https以使用SSL:

代码语言:javascript
复制
$params = array();
$params['hosts'] = array (
    'https://localhost',        // SSL to localhost
    'https://192.168.1.3:9200'  // SSL to IP + Port
);

$client = new Elasticsearch\Client($params);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21391290

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档