gpt4 book ai didi

php - Elasticsearch php api ssl 无法获取本地颁发者证书

转载 作者:太空宇宙 更新时间:2023-11-03 15:08:59 30 4
gpt4 key购买 nike

我一直在尝试使用 Elasticsearch PHP API,在本地 elasticsearch 服务器上使用它工作得很好,我可以索引和搜索但是当我尝试在我的网络服务器上做同样的事情时,使用就像在 documentation 中说的那样给我以下错误:

Elasticsearch\Common\Exceptions\NoNodesAvailableException Object
(
[message:protected] => No alive nodes found in your cluster
[primary_port] => 9200
(...)
[local_ip] => 192.168.2.4
[local_port] => 64641
[error] => SSL certificate problem: unable to get local issuer certificate
[errno] => 60

我在整个互联网上搜索并尝试过:1.下载最新的cacert.pem2. 转到 XAMPP php.ini 并添加行 curl.cainfo="C:/xampp/php/cacert.pem"3. 重新启动 xampp 和 apache。

它什么也没做,所以我认为这可能是因为 elasticsearch 的 PHP API,但我不知道会是什么。

请随时提出任何要求。谢谢!

编辑:

我正在本地主机上测试这个,但是当我通过 https 连接在线进行测试时,它给了我同样的错误。

最佳答案

If you use xampp, please read the following article which is pretty clear to understand why this happens and how to solve it .

再次打开 php.ini 文件并搜索 [curl] 区域,现在我们要取消注释并更改 curl.cainfo 和 openssl.cafile 属性的值。

[curl]
; A default value for the CURLOPT_CAINFO option. This is required to be an
; absolute path.
curl.cainfo ="C:\xampp\perl\vendor\lib\Mozilla\CA\cacert.pem"

[openssl]
; The location of a Certificate Authority (CA) file on the local filesystem
; to use when verifying the identity of SSL/TLS peers. Most users should
; not specify a value for this directive as PHP will attempt to use the
; OS-managed cert stores in its absence. If specified, this value may still
; be overridden on a per-stream basis via the "cafile" SSL stream context
; option.
openssl.cafile="C:\xampp\perl\vendor\lib\Mozilla\CA\cacert.pem"

您的证书路径可能会有所不同,因此我建议您阅读这篇文章。

关于php - Elasticsearch php api ssl 无法获取本地颁发者证书,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38437444/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com