你好! 如果你也是第一次使用ES8和PHP對接使用,這里或許有一些心得可以為你解決一些問題。
本地環(huán)境所需工具
windows 版本搭建 Elastic Search
如下圖,通過官網(wǎng)下載一個(gè)windows版本的Elastic Search 執(zhí)行.bat文件即可啟動
https://localhost:9200 默認(rèn)的是ssl證書
ES8登錄是需要賬戶密碼的,windows啟動ES8以后,重新開啟一個(gè)終端窗口。修改完畢以后登錄的時(shí)候不能使用(示例:123456),需要使用的是加密的那個(gè)
// 進(jìn)入到Es目錄下執(zhí)行
// elastic 用戶名(默認(rèn)的)
// 123456 修改的登錄密碼
bin\elasticsearch-reset-password.bat -u elastic 123456
PHP客戶端部分(我搭建的比較匆忙,也是比較快捷的一種方式)
下載一個(gè)PHPStudy(有composer的就不用下載了)
安裝composer后,使用composer下載elasticsearch
// 準(zhǔn)備工作,找到composer.json (下面是我的配置,
// 也可以只配一個(gè)"elasticsearch/elasticsearch":"^8.8",
{
"require": {
"elasticsearch/elasticsearch":"^8.8",
"psr/http-message": "^2.0"
},
"config": {
"allow-plugins": {
"php-http/discovery": true
}
}
}
// 配置好了以后執(zhí)行
// 終端執(zhí)行:
composer require elasticsearch/elasticsearch
// windows執(zhí)行:
composer.phar require elasticsearch/elasticsearch
// 最后執(zhí)行
curl -s http://getcomposer.org/installer | php
// 終端執(zhí)行:
php composer install
// windows執(zhí)行
php composer.phar install
composer后的所有文件以及相關(guān)依賴??
第一個(gè)問題:
將下載的文件,放入自己對應(yīng)的框架即可,在使用的時(shí)候:
require 'vendor/autoload.php';
// 初始化客戶端
$client = \Elastic\Elasticsearch\ClientBuilder::create()->build();
當(dāng)時(shí)安裝的時(shí)候一心就死腦經(jīng)下載【elasticsearch】文件,所以也只引入了【elasticsearch】文件。客戶端初始化的時(shí)候,只要build就報(bào)500,錯誤,查詢以后發(fā)現(xiàn)是沒有對應(yīng)的依賴 Psr/Guzzlehttp,其實(shí)都已經(jīng)下載了,就是當(dāng)時(shí)鉆牛角尖了,很簡單的問題。
第二個(gè)問題:
客戶端初始化以后,可以使用
$response = $client->info()
來獲取對象信息。這個(gè)地方如果報(bào)錯,需要修改一下文件配置。將默認(rèn)ssl驗(yàn)證關(guān)閉
文件路徑【elasticsearch-8.8.2\config\elasticsearch.yml]??修改完后重啟(關(guān)閉終端,重新去bin目錄下雙擊.bat文件
文章來源:http://www.zghlxwxcb.cn/news/detail-552632.html
全部調(diào)用完以后能出現(xiàn)??圖,算是基本調(diào)通了
文章來源地址http://www.zghlxwxcb.cn/news/detail-552632.html
到了這里,關(guān)于關(guān)于PHP 使用 Elastic Search8的相關(guān)經(jīng)歷的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!